Я верю, когда Вы находитесь в vim
и Вы используете :!some_command
это использует любую оболочку, определяется переменной среды $SHELL
.
Это настраивается, таким образом, Вы могли измениться путем переопределения $SHELL
поведение в Вашем $HOME/.vimrc
файл для использования zsh
вместо этого.
:set shell
shell=/bin/bash
:set shell=zsh\ -i
Или в Вашем .vimrc
использование 1 из этих 2 строк
set shell=/bin/bash\ -i
set shell=/bin/zsh\ -i
Посмотрите :help shell
из vim
для большего количества информации.
:!{cmd} Execute {cmd} with the shell. See also the 'shell'
and 'shelltype' option.
Any '!' in {cmd} is replaced with the previous
external command (see also 'cpoptions'). But not when
there is a backslash before the '!', then that
backslash is removed. Example: ":!ls" followed by
":!echo ! \! \\!" executes "echo ls ! \!".
After the command has been executed, the timestamp of
the current file is checked timestamp.
Вы не говорите $reads_list Параллели GNU и $reads_list2. Таким образом, я озадачен, как вы ожидали бы, что Параллель GNU предположит, что должна использовать их.
rsyncing параллельно, когда мы идем (вместо всего прежде, чем выполнить первое задание) это могло бы быть быстрее, также. Мое предположение - то, что это достаточно:
parallel -j $NSLOTS --xapply \
"rsync {1} $TMPDIR/input/{1};\
rsync {2} $TMPDIR/input2/{2};\
STAR \
--genomeDir $TMPDIR/reference_genome \
--genomeLoad LoadAndKeep \
--runThreadN 4 \
--readFilesIn ../input/{1} ../input2/{2}" :::: $reads_list $reads_list2
Считают обход через учебное руководство http://www.gnu.org/software/parallel/parallel_tutorial.html , который покрывает это и т.д. Ваша командная строка будет любить вас за него.