Jump to content
A Conviso está em busca de profissionais de tecnologia para trabalhar com AppSec! Você é um deles? Inscreva-se aqui! ×

Problema paradoxal - Saída em arquivo com dir


0413anonymous
 Share

Recommended Posts

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 by 0413anonymous
Link to comment
Share on other sites

  • Administradores

Isso acontece por conta da ordem das coisas. No comando "dir > dir.txt", três coisas acontecem, nessa ordem:

  1. Um arquivo dir.txt é criado vazio (por conta do redirecionador "> dir.txt").
  2. O comando dir roda e lê todo o conteúdo do diretório, que tem o dir.txt vazio neste momento.
  3. 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! 

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...