こんにちはみんな厄介なタイトルを申し訳ありませんが、説明するのは少し微妙だと思います。これが私の問題です。awkからの入力を読み取るwhileループでカウント(i)を保持し、ループの後にiの値を出力したいと思います。ただし、ループの後でiはゼロに戻ります。以下は私のプログラムの簡略化されたバージョンです。実際には、ループ内で文字列照合を行ったため、一部の行がスキップされ、インクリメントされません。
私はawkを削除して、別の通常のwhileループを実行しようとしましたが、iの値はループの後に保持されます。したがって、構文エラーが原因ではないと思います。
どんなアイデアでも大歓迎です!
#!/bin/bash
arr=();
i=0;
awk -F '{print $1}' SOMEFILE | while read var
do
echo $var;
arr[i]=$var;
i=$((i+1));
echo $i;
done
echo $i;