ユーザー入力で空白文字を処理する方法

ユーザー入力で空白文字を処理する方法

最近シェルスクリプトの使用を開始しました。そのため、ユーザーからファイル名を入力するときに空白を与えると、私のコードがそれを処理できないという問題に直面しました。同じ答えでも

私のコードは次のとおりです

echo "---------------- Please provide the filename -------------------------"
read filename
if [[ $filename =~ [A-Za-z0-9]+[a-zA-Z0-9_.]*+$ ]]; then
    printf "some code "
else 
    printf "some code"
fi

誰でも私を助けることができますか?入力パラメータに空白が指定されている場合は、エラーが発生するように空白文字を処理する方法があります。

ありがとう

ベストアンサー1

正規表現を使用して確認できます。

完全なコードは次のとおりです。

if [[ $filename =~ \  ]]; then
    printf "error"
    exit(1)
elif [[ $filename =~ [A-Za-z0-9]+[a-zA-Z0-9_.]*+$ ]]; then
    printf "some code "
else 
    printf "some code"
fi

おすすめ記事