以下のスクリプトには非常に混乱するエラーがあります。reservations
100行のファイルを例にしてみましょう:
apple
pear
fruit
...
cat reservations | while read LINE;
do
echo $LINE
for i in {0..2}; do
ssh -o ConnectTimeout=10 admin@render rm -rf /tmp/lock$i
echo $i
done
done
(すでに本番スクリプトの簡略版です。)
今私が期待しているのは、次のような出力を見ることです。
apple
0
1
2
pear
0
1
2
...
しかし、最初の行だけを取得します。つまり、出力は次のようになります。
apple
0
1
2
削除すると、ssh
すべてがうまく動作します!何らかの理由でssh
すべてが混乱してwhileループを終了します。なぜこれが起こるのか分からない! !