シェルスクリプト総合 その26at UNIXシェルスクリプト総合 その26 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト950:識的な範囲であることを前提にしている。 ::使い方:: 上のコードを適当な名前のファイル(例えばselarg.sh)に保存して実行権限を賦与。 $ chmod +x ./selarg.sh あとはファイル中のselectargnum函数の第1,2引数を書き換えて使える。 上の例なら $ ./selarg.sh "第1引数" "第2引数" "第3引数" "第4引数" "第5引数" に対して 第2引数 第3引数 第4引数 という出力が得られる。 951:名無しさん@お腹いっぱい。 18/05/03 00:50:36.20 .net seqを除いてPOSIX準拠。 もしもより厳密にPOSIXに従いたければ当該箇所を seq $((toargnum - fromargnum + 1)) から yes | head -n $((toargnum - fromargnum + 1)) としてもいいだろう。 952:名無しさん@お腹いっぱい。 18/05/03 03:17:05.15 .net >>922のせいで勘違いさせたようですね > 別の関数の引数に渡すのってどうやればいいだろうか? 重要なのはこれ another_function() { for i in "$@"; do printf "%s\n" "$i" done } foo() { another_function "${@:2:3}"; } another_functionはそのまま使って、 fooの部分をPOSIX準拠にして 以下のような出力を得たいということです $ foo a "b 1" "c 1" d e b 1 c 1 d 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch