再読み込みによるユーザー入力の読み取り

再読み込みによるユーザー入力の読み取り

単純なbashコマンドを使用するとき

#!/bin/bash
echo Please, enter your name
read NAME
echo "Hi $NAME!"

そしてそれをsource filename.sh使って実行:Undefined variable

何が問題なのでしょうか?検索しましたが、解決策はありません。

ベストアンサー1

今後の参考のための要約:

shebangはを指しますが、コマンド/bin/bashsourceためにコードは現在のシェルで実行され、結果はですcsh

コードは私のDebianでは動作しますbashが。cshsource filename.shbash

期待どおりに実行するには、bash実行可能にし(chmod a+x filename.sh)で呼び出す必要があります./filename.sh

最後に、#!/bin/bashこの特別なケースでは、shebangは間違った方法で入った。

おすすめ記事