質問: $ line_number」メッセージが表示されません。ファイルが正しいと仮定すると、私が見ているこの問題を引き起こす可能性のあるものは何ですか?
回答: 関数のいずれかがstdinから読み取られますか(例:readコマンド)?もしそうなら、それは残りのfunction_fileを丸呑みにします。別のファイル記述子を使用するようにwhileループを変更します。line_num=0 while read -u3 line; do echo "line_number=$(( ++line_num ))" $func done 3<"$function_file" all_caps_variablesを使用する習慣から抜け出します。ある日、誤って「path」を使用してスクリプトを壊してしまいます。