Например, эта строка сбои:
$ nohup for i in mydir/*.fasta; do ./myscript.sh "$i"; done > output.txt&
-bash: syntax error near unexpected token `do
Что правильный путь состоит в том, чтобы сделать это?
Потому что nohup ожидает однословную команду и ее аргументы, а не конструкцию цикла оболочки. Вам придется использовать:
nohup sh -c 'for i in mydir/*.fasta; do ./myscript.sh "$i"; done >output.txt' &
Вы можете сделать это на одной строке, но, возможно, вам захочется сделать это и завтра.
$ cat loopy.sh
#!/bin/sh
# a line of text describing what this task does
for i in mydir/*.fast ; do
./myscript.sh "$i"
done > output.txt
$ chmod +x loopy.sh
$ nohup loopy.sh &