ls > list
Создает новый файл с именем list и добавляет в этот файл содержимое команды ls
.
Вы можете проверить содержимое файла list , набрав команду как,
cat list
Теперь для второй команды
ls >> list
будет добавлено содержимое ls
] в файл с именем список . Таким образом, разница будет в том, что если вы выполните эту команду 5 раз, вывод команды ls
будет записан 5 раз в файл list , но для каждой первой команды каждый раз будет вывод будет перезаписан.
Далее предполагается, что часть Rep имени файла нумеруется последовательно, начиная с 1 (т.е. не будет Rep2 или Rep3, если также не будет Rep1). Он использует наличие файла "Rep1", чтобы решить, запускать ли кот для конкретной серии файлов Experiment * ... это необходимо только в том случае, если некоторые файлы могут отсутствовать в последовательности ExperimentA * .. ExperimentZ * . Если это невозможно, просто удалите [-e Experiment $ {f} _Rep1.bed] &&
из строки cat.
for f in {A..Z} ; do
[ -e Experiment${f}_Rep1.bed ] && cat Experiment${f}_Rep*.bed > Experiment${f}_merged.bed
done