Shell 如何通过tcsh脚本并行运行作业?
考虑一个包含以下代码的tcsh脚本Shell 如何通过tcsh脚本并行运行作业?,shell,parallel-processing,scripting,tcsh,Shell,Parallel Processing,Scripting,Tcsh,考虑一个包含以下代码的tcsh脚本 #!/bin/tcsh -f set PWD = $PWD if (!a) then mkdir a cd a ln -sfn temp.txt endif cd $PWD/a job << END # some tool specific settings END #/垃圾箱/tcsh-f 设置PWD=$PWD 如果(!a)那么 mkdir a cd a ln-sfn temp.txt 恩迪夫 cd$PWD/a 作业只需在此处
#!/bin/tcsh -f
set PWD = $PWD
if (!a) then
mkdir a
cd a
ln -sfn temp.txt
endif
cd $PWD/a
job << END
# some tool specific settings
END
#/垃圾箱/tcsh-f
设置PWD=$PWD
如果(!a)那么
mkdir a
cd a
ln-sfn temp.txt
恩迪夫
cd$PWD/a
作业只需在此处添加“&”
job我认为tcsh
-脚本不是更好的解决方案。我不知道您的确切问题是什么,但我会使用make
(如果不存在文件/目录,则创建文件/目录)。您可以建议如何通过make执行此操作吗?如果您想执行相同的操作三次,但每次都使用不同的目录,您可能应该使用类似shell的bash
,它支持具有可变参数的函数。假设目录创建几乎是即时的,那么您可能希望利用并行性来加速最后的作业。也可以考虑GNU并行。<代码> EnvialSimult.CsH是在 CSH中编写的一个非平凡程序。由于其性质,它必须用csh
编写。作为作者,我可以告诉你这是一场噩梦,因此我必须同意@CharlesDuffy:不要使用(t)csh
,除非你真的不能使用其他任何东西。
job << END
job << END &
# some tool specific settings
END
job >> job_output.out << END &
# some tool specific settings
END