ディレクトリのファイルのリストを取得し、それらの1つを選択して端末に出力するbashスクリプトを作成しようとしています。次に、次の実行時にシーケンスの次のファイルを選択し、そのファイルの名前を出力します。これは可能ですか? bashプログラムが選択したファイルを「記憶」し、次のスクリプト呼び出しで次のファイルを選択するようにするにはどうすればよいですか?
答え1
モバイルソフトリンクを使用してください。
初期化:
ln -s file001 .thisone
スクリプトから:
infile="$(stat -c "%N" .thisone)"
sequence=$( basename "$infile" | sed -e 's%file0*%%' )
next=$((sequence + 1))
printf -v nextfile "file%03d" $next
rm -f .thisone
if [[ -f "$nextfile" ]] ; then
ln -s "$nextfile" .thisone
else
ln -s "file001" .thisone
fi
#
# process $infile, .thisone next
未テストしかし、shellcheck.netはそれが好きです。