PROGRAM SHELL

初心者のためのbash超入門【第15回 標準入力受付】

 

 

プロンプトから値を受け取ろう

プロンプトを表示して値を受け取りたい場合は、readコマンドを使います。

read シェル変数名

プロンプトから値を受け取るシェルスクリプトは、以下のようになります。
echoコマンドに-nオプションを付けることによって、プロンプトを改行しないようにしています。
また、3行目の末尾に書かれている「>&2」は、少し難しくなりますが標準出力を標準エラー出力に向けるという意味です。
>&2」は書かなくても動作しますが、シェルではプロンプトを標準エラー出力に書き出すことになっています。

 実行例
$ input.sh
値を入力してください => ABC
入力内容:ABC

メモ

UNIX系OS(Linux含む)はファイルディスクリプタという入出力概念があります。
ファイルディスクリプタは整数の0から始まります。
標準入力は0、標準出力は1、標準エラー出力は2となります。

値は空白で区切ることによって、複数渡すこともできます。

用意したシェル変数以上の値が入力された場合は、最後のシェル変数に残りの値がまとめて代入されます。

 実行例
$ input2.sh
値を入力してください => dog cat mouse etc
入力内容1:dog
入力内容2:cat
入力内容3:mouse etc

 

 

-PROGRAM, SHELL