Перебирая все входы и создавая отдельные выходные файлы - PullRequest
1 голос
/ 01 марта 2012

Я использую cygwin на Windows 7 . У меня есть папка с примерно 1200 файлами одного типа (нет подкаталогов). Я пытаюсь пройти через папку и выполнить определенное действие (это биоинформационное выравнивание) для каждого файла. Вот код, который я использую:

$ for file in Project/genomes_0208/*; do ./bowtie-build $file ../bowtie-0.12.7/indexes/abc; done

./bowtie - сборка - это операция, которую я хочу выполнить. Теперь он завершает операцию для всех файлов в папке, но в этом случае он записывает выходные данные в один и тот же файл abc .

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

Надеюсь, я успешно объяснил проблему, буду признателен за любую помощь в этом!

1 Ответ

3 голосов
/ 01 марта 2012

Как насчет:

./bowtie-build $file "${file}.out"

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...