2011-12-22 1 views
2

Скажем, у меня есть список в файл, который содержит имена файлов (без пробелов):Как создать несколько файлов из списка в текстовом файле?

filename 
othername 
somethingelse 
... 
  • Каждая строка сопровождается CR, один «Имя файла» в строке

Есть ли какая-то сценария touch, который я могу использовать для создания сотен файлов с названиями, заданными в списке?

Было бы также невероятно полезно, если бы я смог заполнить каждый файл содержимым при создании.

Все ненавистники есть советы: Я использую Ubuntu 10.04

Благодарности

+0

Такой графический интерфейс был бы пчелиным колени, но для Ubuntu (я еще не пробовал это с вином, но он не является бесплатным, поэтому он находится на дне моего тового списка: http: //www.sobolsoft. com/createfiletext/ – TryTryAgain

+0

Как заголовки в списке? Введите пример ввода и вывода, пожалуйста. – Blender

+1

Что вы подразумеваете под «списком в текстовом файле»? Текстовый файл, содержащий все имена файлов, которые нужно создать? –

ответ

5

Чтобы просто создать файлы, предполагая, что file_full_of_files_names представляет собой текстовый файл с пробелами запятыми имен файлов:

cat file_full_of_files_names | xargs touch 

Чтобы на самом деле заполнить их контентом, из файла initial_content:

cat file_full_of_files_names | tr ' \t' '\n\n' | while read filename; do 
    if test -f "$filename"; then 
     echo "Skipping \"$filename\", it already exists" 
    else 
     cp -i initial_content "$filename" 
    fi 
done 
+0

Было несогласованность. В первой версии вы можете поместить все имена файлов в одну строку, разделенные пробелами. Вторая версия этого не допускала. –

+0

Должен ли я публиковать новый вопрос, расширяющий это? Мне теперь интересно, могу ли я изменить переменную @ drawable/"XYZ" с именем файла для каждого созданного файла? – TryTryAgain

+0

Вы можете заменить 'cp -i initial_content '$ filename" 'на' sed -re' s/@ drawable [^ "] */@ drawable $ filename/g" "$ filename" '. Но учтите, что я не тестировали это изменение. –

Смежные вопросы