Как создать файлы, используя строки в TXT-файле?

Например, у меня есть файл с именем fileNames.txt. cat >fileNames возвращается

 abet able abacus в abet able abacus 

Как использовать имена файлов для создания abet, able и abacus в виде файлов .txt? Я пытался использовать трубы с кошкой и прикосновением, но я новичок в этом, поэтому я не знаю, что еще попробовать.

3 Solutions collect form web for “Как создать файлы, используя строки в TXT-файле?”

Существует множество способов сделать это, включая следующие (при условии GNU xargs ):

 sed -e '/^[[:space:]]*$/d' -e 's/$/.txt/' fileNames.txt | xargs -rd '\n' touch -- 

Это предполагает, что в файле fileNames.txt имеется только одно имя файла. Сценарий sed удаляет пустые строки (благодаря @rubynorails) и добавляет «.txt» в конец каждого имени файла, прежде чем xargs touch их с xargs touch .

Используя параметр -d '\n' с xargs (расширение GNU, которое указывает xargs использовать только новую xargs или '\ n' как разделитель, а не любые пробелы, и отключает обработку котировок), это даже справляется с именами файлов, которые имеют пробелы и другие потенциально проблематичные символы (кроме \n или самой новой строки). например, если строка содержит «abet able», без -d '\n' , будут созданы два файла ( able.txt и able.txt ). С его abet able.txt будет создан только один файл abet able.txt .

Вы можете использовать перенаправление ввода в цикле while с командой чтения

 while read line; do touch "${line}.txt" done < fileNames.txt 

awk 'NF>0' fileNames.txt | while read line; do touch "${line}.txt"; done

Команда awk просто избавляется от пустых строк.

Насколько я знаю, эти строки также являются буквальными, поэтому все, что находится на линии, записывается как имя файла.

  • Запустите .zshrc при передаче команды через -c
  • Результаты задания Cron отличаются от выполнения из собственной оболочки
  • Команда Bash для отображения всех файлов на основе содержимого
  • как закрыть работу один за другим? есть ли какие-либо варианты?
  • делает головной вход> вывод копирует все невидимые символы в новый файл?
  • bash custom builtin
  • Как очистить содержимое файла журнала ретрансляции в оболочке?
  • В чем разница между echo `date`, echo" date "и echo '' date`?
  • который bash выполняет?
  • Мониторинг прогресса / доступности фоновых заданий
  • Что означает «sh a.sh <& 0> & 0»?
  • Linux и Unix - лучшая ОС в мире.