>>651
変数を使わないの書き方の基本の一つは引数(パラメータ)を使うことだよ
引数を変数の代わりとして使う。そのやり方に2パターンある
・パターン1 関数を作る(呼び出し先の関数の引数にする)
foo() {
case "$1" in
'A'|'aaa') echo 'B' ;;
*) echo "$1" ;;
esac
}
foo "$(<なにかの処理>)"
・パターン2 引数を再設定する(自分自身の引数にする)
set -- "$(<なにかの処理>)"
case "$1" in
'A'|'aaa') echo 'B' ;;
*) echo "$1" ;;
esac
パターン2はこのままだと自分自身の引数がなくなってしまうが、
set -- "$(<なにかの処理>)" "$@"
とすることで、残しておくことが可能。以降は引数の番号をずらして
扱うかshiftで元に戻すなりするか、引数の個数が固定なら、
set -- "$@" "$(<なにかの処理>)" と逆にしてもよい
余談だが、そんなコードを書くぐらいなら素直に変数を使えばいいと思うかもしれないが、
シェルスクリプトの変数がグローバル変数なのに対して、
引数は(レキシカルスコープ的な)ローカル変数になってるという重要な違いがある
localやtypesetを使った変数のローカル化はダイナミックスコープなのでそれとも違う
シェルスクリプト総合 その29
■ このスレッドは過去ログ倉庫に格納されています
657デフォルトの名無しさん (ワッチョイ ca98-9Fzi)
2018/11/17(土) 01:07:52.12ID:LhPQgZnG0■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 「排外主義が日本全体で跋扈」村井嘉浩宮城県知事−外国ルーツの女子児童へのいじめで [蚤の市★]
- 【テレビ】20代で7割、30代で6割が「見ていない」 衝撃の調査結果から考える「若者のテレビ離れ」本当の理由 [冬月記者★]
- クールジャパン機構、累積損失500億円超 政府が廃止など検討へ ★2 [ぐれ★]
- (株)秀和グループ(東京)が破産=秀和システム 船井電機(株)を傘下だが、脱毛サロン「ミュゼプラチナム」の連帯保証などして [お断り★]
- 【アニメ】『日本の最強アニソンBEST100』 1位はまたもや『残酷な天使のテーゼ』… 視聴者は「出来レース」「見飽きた」の声 [冬月記者★]
- AKB48契約解除の花田藍衣、動画で悲痛な訴え「運営から性的な質問をされ…峯岸さんのように坊主にして誠意を見せろと言われ坊主に」★5 [冬月記者★]
- 【地上波/DAZNほか】 FIFAワールドカップ2026 総合スレ★163【メキシコ/カナダ/アメリカ】
- 【地上波/DAZNほか】 FIFAワールドカップ2026 総合スレ★162【メキシコ/カナダ/アメリカ】
- 【MLB】ツインズ vs ドジャース ★3
- ハム専 ★5
- ハム専 ★4
- 〓たかせん〓
- 【文春】高市、暴かれた本性。木下秘書「文春は中国から毎週一千万円もらっている」自民党内から総スカンなど🤓 [359965264]
- 【朗報】GTA6、676GB [268244553]
- 【画像】メンヘラ系JK「え、むり。もう自殺する」👉電車の方が破壊されて生き延びる [398059782]
- 日本人が中国を未だに下に見る理由とは?高市も不思議がってる [472617201]
- 【疑問】ルパン三世テレビスペシャルがやらなくなった理由wwwwwwwwwwwwwwwwww [832215575]
- 【高市悲報】ミュトス、米政府機密システムの脆弱性も発見していた [663382246]