txtファイルを1行ずつ検索するときのコマンド読み込みの問題

txtファイルを1行ずつ検索するときのコマンド読み込みの問題

txtファイルに収集されたユーザー挿入単語の簡単な辞書を作成し、それを学習する機能を作成しようとしています。 2つの異なる言語の単語を選択した区切り文字で区切り、ユーザーが入力した答えが正しいことを確認します。最初の反復後にtxtファイル行をスキップする問題があったので、サブシェルを使用し、正解/誤解の変数を計算しないと正常に動作しました。この問題を解決する方法がわかりません。私のコードの一部:

count=0
ans=0
while IFS= read -r line; do
    (...)
    (                     # without subshell the lines from txt file were skipped
    exec 0< /dev/tty      # I used this command to prevent skipping the "read check" line 
                          # as it happened before 
    read check
    if [ "$check" == "$correct" ];then
        echo "Correct"
        let ans++
        let count++
    else
        echo "Wrong"
        let count++
    fi
    )
done < "file.txt"
echo "Answered $ans out of $count words correctly"

ベストアンサー1

おすすめ記事