bash:整数式が必要です。

bash:整数式が必要です。

out.csvファイルがあり、ユーザーが入力した名前がファイルに存在することを確認する必要があります(カンマ区切り)。名前を取得するために読み取りを使用していますが、同等性の検証中にエラーが発生します。

    IFS=","
    while read tname tnum
        do
            if [ $tname -eq $name ]; then
                flag=1
                break
            fi
        done < out.csv
    echo "$ch"

ベストアンサー1

-eqこのエラーは、整数-ne-gtなどの整数関数の等価演算子を使用して文字列を比較しようとしたために発生します。

文字列を比較するには、=等しい比較または!=等しくない比較を使用します。

確認するこれ比較演算子に関する追加情報

if [ $tname -eq $name ]; then

次のように変更する必要があります。

if [ "$tname" = "$name" ]; then

(また、変数を引用することを忘れないでください)。

おすすめ記事