次の行を含むスクリプトがあります。
eval for i in \{"$1".."$2"\}\; do [ ! -e "$3"/\$i.\* ] \&\& echo \"\$i\" \; done \| shuf \| mycommand "$3"
つまり、最初に数字という名前のファイルを持たない一連の数字を作成し、そのファイルにパイプしてからELF実行可能ファイルにshuf
パイプします。mycommand
ほとんどの場合、スクリプトは正常に実行されますが、時にはsegfaultエラーが発生します。つまり、segfault エラーは再現されません。
$ myscript 0001 734 XMJ
/home/tim/bin/myscript: line 25: 10170 Exit 1 for i in {0001..734};
do
[ ! -e XMJ/$i.* ] && echo "$i";
done
10171 Done | shuf
10172 Segmentation fault (core dumped) | mycommand XMJ
これはランタイムによってsegfaultが発生することを意味しますかshuf
?
エラーメッセージから何を推論して修正できますか?
ありがとうございます。