балансировка bash расчетов - PullRequest
1 голос
/ 19 марта 2020

У нас есть инструмент для резки адаптеров https://github.com/vsbuffalo/scythe/blob/master/README.md, и мы хотели, чтобы он использовался для всех файлов в папке raw и выводил каждый файл отдельно как OUT + File Name.

Что-то не так с этим сценарием, который я написал, потому что он не берет каждый файл отдельно, и все это не работает должным образом. Он будет генерировать пустой файл с именем OUT + files

Ожидаемая операция будет выглядеть так:

взять файл1, использовать косу на нем, записать вывод как OUTfile1

взять файл2 и c .

    #!/bin/bash
FILES=/home/dave/raw/*

for f in $FILES
do
  echo "Processing the $f file..."
  /home/deve/scythe/scythe -a /home/dev/scythe/illumina_adapters.fa -o "OUT"+$f $f
done

Кроме того, я заметил (тестирование на один файл), что скрипт использует только одно ядро ​​из 130 доступных. Есть ли способ улучшить его?

1 Ответ

1 голос
/ 19 марта 2020

В оболочке нет оператора объединения строк. Вместо этого используйте сопоставление; это "OUT$f", а не "OUT"+$f.

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