shellscript
差分
このページの2つのバージョン間の差分を表示します。
両方とも前のリビジョン前のリビジョン次のリビジョン | 前のリビジョン | ||
shellscript [2021/09/29 06:27] – [bash] nullpon | shellscript [2024/08/20 15:31] (現在) – nullpon | ||
---|---|---|---|
行 79: | 行 79: | ||
read line | read line | ||
echo $line | echo $line | ||
+ | |||
+ | プロンプトを出して入力を促す | ||
+ | |||
+ | echo -n "User Name: " | ||
+ | read username | ||
+ | echo $username | ||
+ | | ||
+ | zshでは以下のようにかける | ||
+ | |||
+ | read " | ||
+ | echo $username | ||
+ | | ||
+ | 入力値をマスクしたい場合はread -s(決定時の改行も出力されなくなるのでechoを挟むとよい) | ||
+ | |||
+ | read -s " | ||
+ | tty -s && echo | ||
+ | echo $password | shasum -a 256 | ||
+ | |||
+ | |||
| | ||
標準入力が尽きるまで行を読み取る(Ctrl-DでEOFを送信) | 標準入力が尽きるまで行を読み取る(Ctrl-DでEOFを送信) | ||
行 326: | 行 345: | ||
</ | </ | ||
- | '' | + | '' |
+ | |||
+ | |||
+ | '' | ||
< | < | ||
行 364: | 行 386: | ||
===== ヒアドキュメント ===== | ===== ヒアドキュメント ===== | ||
- | ==== 変数に格納 | + | 変数に格納 |
<code shellscript> | <code shellscript> | ||
- | hoge=$(<< ' | + | val=$(cat << ' |
- | a = ARGV.first.split(" | + | hoge |
- | puts a.gsub(/ | + | fuga |
+ | piyo | ||
EOS | EOS | ||
) | ) | ||
+ | </ | ||
+ | |||
+ | |||
+ | 標準入力に渡す | ||
+ | |||
+ | <code shellscript> | ||
+ | while read -r line | ||
+ | do | ||
+ | echo $line | ||
+ | done << ' | ||
+ | hoge | ||
+ | fuga | ||
+ | piyo | ||
+ | EOS | ||
+ | ) | ||
+ | </ | ||
+ | |||
+ | |||
+ | 一度変数を経由する。''<<<'' | ||
+ | |||
+ | <code shellscript> | ||
+ | val=$(cat << ' | ||
+ | hoge | ||
+ | fuga | ||
+ | piyo | ||
+ | EOS | ||
+ | ) | ||
+ | |||
+ | while read -r line | ||
+ | do | ||
+ | echo $line | ||
+ | done <<< | ||
+ | </ | ||
+ | |||
+ | クオートの有無は変数展開するかしないか | ||
+ | |||
+ | <code shellscript> | ||
+ | val=' | ||
+ | |||
+ | while read -r line | ||
+ | do | ||
+ | echo $line | ||
+ | done << " | ||
+ | ${val} | ||
+ | ${val} | ||
+ | ${val} | ||
+ | EOF | ||
+ | </ | ||
+ | |||
+ | クオートありの場合は変数展開されずに以下のように出力される | ||
+ | |||
+ | < | ||
+ | ${val} | ||
+ | ${val} | ||
+ | ${val} | ||
</ | </ | ||
shellscript.1632896826.txt.gz · 最終更新: 2021/09/29 06:27 by nullpon