次のことをしたいと思います。ディレクトリセットがあります。
例)400K 500K 600Kなど
各ディレクトリには、「qsub run.pbs」を使用してバッチを通じて送信したい「run.pbs」ファイルがあります。
私は同様のことをしています:
for var in "@/run.pbs"
do
qsub run.pbs
done
私はWebで検索したものに基づいてこのスクリプトを作成しました。ただし、スクリプトの実行後にrun.pbsが見つからないというエラーが発生します。
それで、スクリプトがすべてのディレクトリにアクセスするのを防ぐためのステップが欠けているわけではありません。
私のスクリプトはサブディレクトリ(400K 500K ...)と同じディレクトリにあります。
パスは /home/d/user/sims/study/temp に似ています。
ありがとうございます!
編集する:
run.pbsは次のようになります。
#!/bin/bash
#PBS -N name_of_simulation
#PBS -l nodes=1:ppn=20
#PBS -l walltime=120:00:00
#PBS -A name_of_allocation
#PBS -j
# cd to working directory
cd $PBS_O_WORKDIR
module load module1
module load module2
module load module3
mpirun -np 20 nameofprogram < input_file.in
答え1
たぶん、次のようなものがあります。
find /home/d/user/sims/study/temperatures -name run.pbs -exec qsub {} \;