Crie vários arquivos e nomeie-os a partir da linha de comando

1

Eu preciso criar 300 arquivos em branco e colocá-los em uma pasta no meu servidor, em seguida, nomeá-los de uma lista em um arquivo txt, tenho acesso SSH, então é possível fazer isso usando a linha de comando?

    
por john 28.11.2012 / 16:55

3 respostas

1

Você pode usar xargs para isso:

xargs -a file_list.txt touch

Isso fornece cada linha do arquivo de texto como o parâmetro para touch . Não faz sentido criar os arquivos primeiro, é melhor criar o nome completo com o nome correto do arquivo de texto.

Se você deseja enviar para um diretório arbitrário, por exemplo, PATH , tente:

cat file_list.txt | xargs -I % touch PATH/%

    
por 28.11.2012 / 17:04
1

Para uma maneira simples de fazer isso, tente.

touch $(cat filename.txt)
    
por 28.11.2012 / 17:13
0
#!/bin/bash

while read filename; do
  touch $filename
done < filename.txt

Isto irá iterar sobre cada linha de filename.txt e criará um arquivo vazio com nome na linha atual.

    
por 28.11.2012 / 17:02