ls >> Out_file.txt
Quando você está na pasta em questão, é claro ...
Em um diretório, tenho X.txt
, Y.txt
, Z.txt
files. Quero mover esses nomes de arquivo em um único arquivo, como abaixo:
Out_file.txt
X.txt
Y.txt
Z.txt
Algum comando unix para conseguir isso?
ls >> Out_file.txt
Quando você está na pasta em questão, é claro ...
É um passo muito simples, você só precisa redirecionar a saída de 'ls' para um arquivo.
ls -1 >> file.txt
Outra opção para resolver este problema é a seguinte:
ls | tee Out_File.txt
Se você quiser nomes de arquivo de arquivos de texto,
ls *.txt > file_name_output.text
Se você deseja reunir o conteúdo do arquivo,
cat *.txt > file_content_output.text
Experimente este tar -cf file.tar X.txt Y.txt Z.txt
Isto irá criar file.tar você pode executar o comando abaixo para ver a saída
vim file.tar
por exemplo:
tar -cf file.tar X.txt Y.txt Z.txt
vim file.tar
" tar.vim version v29
" Browsing tarfile /root/file.tar
" Select a file with cursor and press ENTER
X.txt
Y.txt
Z.txt
Mostro a saída do meu sistema, significa que funciona para mim.
Se você quiser que Out_file.txt
contenha uma lista classificada do nome de todos os arquivos não ocultos terminados em .txt
sem incluir Out_file.txt
, se ele não estava lá antes, você pode fazer:
sh -c 'ls -d -- "$@" > Out_file.txt' sh *.txt
Com todas as soluções relacionadas a "ls", há uma grande chance de incluir conteúdo sem sentido relacionado ao formato no arquivo de texto.
O comando "dir -1 > file.txt" fornece uma única coluna com os nomes de todos os arquivos e pastas desse diretório imediatamente.