ユーザーが確認メッセージを押すまで待ちたいですReturn。 Bashでは電話できます。
$ read
$
しかし、sh(私の場合はダッシュ)では次のようになります。
$ read
sh: 1: read: arg count
$
私が見るには〜しなければならない引数を提供しますか?この違いはどこから来るのか?
答え1
これ標準read
ユーティリティ必要最後のもの変数の名前です。
一部のシェルread
実装では、以下を使用します。基本たとえば、変数はREPLY
名前を指定せずに読み取ったデータを保存しますが、dash
POSIX互換のシェルはそうではありません(標準ではこれを必要としないため)。シェルでこれに対応するものは次のとおりですdash
。
read REPLY
shell bash
POSIXモードでもするPOSIX以外の一部の機能を有効にします。これはread
、シェルを実行しても変数名なしで機能することを意味するものの1つですbash --posix
。
POSIXモードが有効になっているときに発生するイベントの完全なリストbash
(この質問は実際には関係ありません)については、以下を参照してください。https://www.gnu.org/software/bash/manual/html_node/Bash-POSIX-Mode.html