slurmのbashスクリプトでのユーザー入力シミュレーション

slurmのbashスクリプトでのユーザー入力シミュレーション

私の問題は私が見つけた問題と似ていると思います。ここしかし、答えは混乱しています。 (私は低い評判のため、まだこの質問についてコメントすることはできません。)

slurmを使用して実行する必要があるbashスクリプトがあるため、スクリプトにユーザー入力が必要な場合は次のようにします。

Enter y or yes if you want to continue Compass and used cached results.

スクリプトが停止します。次のコード行を実行すると、次の行が表示されます。

compass --data compass_adipocytes_only_input_transposed.tsv --num-processes 10 --species mus_musculus

スクリプトが「y」で応答するようにするにはどうすればよいですか?

完全なスクリプトです

#!/usr/bin/env bash
#SBATCH --job-name=Compass
#SBATCH --ntasks=54
#SBATCH --output=compass.%j.out
#SBATCH --exclusive

# To activate this environment, use
. /tools/Miniconda3.7/etc/profile.d/conda.sh
conda activate /data04/projects04/MarianaBoroni/lbbc_members/lib/conda_envs/compass

which compass


compass --data compass_adipocytes_only_input_transposed.tsv --num-processes 10 --species mus_musculus
yes | compass

# To deactivate an active environment, use:
conda deactivate
exit

私はコマンドでそれを実行しました。

sbatch metabolismanalysis.sh

ベストアンサー1

yes | myscript.sh

y\nこれにより、スクリプトの連続ストリームが出力されます。他の文字/文字列が必要な場合は、yes foo出力を使用してくださいfoo。バラよりはいマニュアルページ

おすすめ記事