単一のコマンドを入力して複数ファイルの出力を確認したい [重複]

単一のコマンドを入力して複数ファイルの出力を確認したい [重複]
(directory=$(python -c 'import read_params; print(read_params.get_directory())')
nsrc=$(cat $directory/master.pixels|wc -l)
tail $directory/forward_src0{1..$nsrc}_ls00/out_data_forward)

上記は、シミュレーションが実行されていて(関係ありません)、上記のコマンドはディレクトリ内のファイルを印刷してシミュレーションを追跡することです。

  • ..../forward_src01_ls01/out_data_forward
  • ..../forward_src01_ls02/out_data_forward
  • ..../forward_src01_ls03/out_data_forward
  • ..../forward_src01_ls04/out_data_forward

src_08まで続きます。

一部のLinuxシステムでは、エラーなしで実行されます。しかし、私のシステムでは、次のエラーが発生します。

[prasad@daahpc1 sparc_flows]$ (directory=$(python -c 'import read_params; print(read_params.get_directory())')
> nsrc=$(cat $directory/master.pixels|wc -l)
> tail $directory/forward_src0{1..$nsrc}_ls00/out_data_forward)
tail: cannot open /scratch/prasad/sparc_test/forward_src0{1..8}_ls00/out_data_forward' for reading: No such file or directory

確かに、ファイルは存在します...個別に開くことはできますが、一括で開くことはできません。

答え1

システムのシェルが他のシステムで使用するシェルとは異なるようです(echo $SHELL)。

ローカルシェルが呼び出されているシェルを理解/置き換えることは{1..8}できませんtail

システムで同じシェルを試してください。次に安全に置き換えることができる*場合は、スクリプトで汎用ワイルドカードを使用することもできます。{1..8}*

関連情報