[過去ログ] シェルスクリプト総合 その26 [無断転載禁止]©2ch.net (1002レス)
上下前次1-新
抽出解除 レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
938(1): 名無しさん@お腹いっぱい。 [sage] 2018/05/03(木) 05:49:25.62 AAS
>>932932(4): 名無しさん@お腹いっぱい。 [sage] 2018/05/03(木) 04:32:29.46 AAS
なお、俺が書いたコードだと以下のように正しく出力される
$ test.sh "a" "b${A}b" "c" "d" "e"
1: bb
b
b
b
b
2: c
3: d
>>925を参考にして以下のように書いた
selectargnum() {
func=$1 start=$2 length=$3
shift 3
i=0 last=$((start+length))
for arg in "$@"; do
: $((i+=1))
[ $i -gt $length ] && shift
[ $i -ge $last ] && continue
shift
set -- "$@" "$arg"
done
$func "$@"
}
somefunc() {
printf '1: %s\n' "$1"
printf '2: %s\n' "$2"
printf '3: %s\n' "$3"
}
selectargnum somefunc 2 3 "$@"
ちょっとリファクタリング(ってほど大層じゃないが)
selectargnum() {
func="$1"; start=$2; length=$3
shift 3
i=0; last=$((start + length))
for arg in "$@"; do
i=$((i + 1))
test ${i} -gt ${length} && shift
test ${i} -ge ${last} && continue
shift
set -- "$@" "${arg}"
done
"${func}" "${@}"
}
939: 名無しさん@お腹いっぱい。 [sage] 2018/05/03(木) 06:31:02.21 AAS
>>938
文字増やしてるだけじゃねーかw
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.042s