0413anonymous Posted October 1, 2021 at 09:37 AM Share Posted October 1, 2021 at 09:37 AM (edited) Galera, seguinte... Me deparei com uma situação em que não consegui achar uma solução para ela e, tomara que eu consiga me fazer entender para alguém que queira ajudar-me nisso... Vamos lá... No cmd, se digitarmos "dir > dir.txt", nesse arquivo gerado mostrará (dentre as outras infos) o próprio arquivo "dir.txt" que acabara de ser gerado. Porém, eu notei 2 problemas nisso (se você quer ter esse arquivo ATUALIZADO, claro): 1- O "dir.txt" o mostrará com 0 bytes (ao invés do correto, que é o tamanho dele após o arquivo ser gerado) 2- Na última linha do comando (bytes free), também estará desatualizada, ou seja, sem o decremento do tamanho que consumiu a geração do arquivo "dir.txt" Alguém saberia uma forma de solucionar este problema paradoxal, ou seja, de forma que eu consiga que o arquivo "dir.txt" fique PRECISAMENTE com a mesma saída de um dir APÓS a geração deste arquivo? Tomara que eu tenha conseguido me fazer entender... Se alguém tiver a fim de ajudar, porém não entendeu o meu problema, eu tentarei explicar de outra maneira... Desde já, obrigado! Edited October 1, 2021 at 09:39 AM by 0413anonymous Quote Link to comment Share on other sites More sharing options...
Fernando Mercês Posted October 1, 2021 at 03:31 PM Share Posted October 1, 2021 at 03:31 PM Isso acontece por conta da ordem das coisas. No comando "dir > dir.txt", três coisas acontecem, nessa ordem: Um arquivo dir.txt é criado vazio (por conta do redirecionador "> dir.txt"). O comando dir roda e lê todo o conteúdo do diretório, que tem o dir.txt vazio neste momento. Ao tentar imprimir o que leu, o cmd redireciona a saída padrão para o arquivo dir.txt, que ainda tá vazio, mas agora terá a saída do comando dir já pronta no passo anterior. A única forma que conheço é usar outro diretório. Isso não resolve o problema paradoxal que você apresentou. Creio que não haja solução para considerar o tamanho do dir.txt porque ele só é preenchido depois que o comando dir roda, o que cria o paradoxo que você falou. Abraço! Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.