
00 01 02,...nというサブフォルダがあります。各フォルダ名には少なくとも2桁の数字が含まれています。 os-x 端末でこれらのサブフォルダにアクセスする必要があります。注文する
for i in $(seq -w 00 06); do
echo $i;
done
0 1 2 3 4 5 6
しかし、RHELの上記のコードを使用すると、00 01 02 03 04 05 06
mac端末にRHELに似た最小2桁の出力を生成させることができますか?
答え1
試すことができるos-xはありませんが、次の回避策が機能する可能性があります。
seq -f '%02.0f' 0 6
答え2
OS / Xが付属しているので、zsh
スクリプトを書くことができます(構文を使用したことに注意してzsh
ください(引用符で囲まれていないので、分割+glob演算子を呼び出す))zsh
$i
bash
for x in {00..06}; do
echo $x
done
Posixlyはいつでも次のことができます。
x=0; while [ "$x" -le 6 ]; do
printf '%02d\n' "$x"
x=$((x + 1))
done
または
seq() (first=$1 last=$2 width=${3:-0} step=${4:-1}
awk "BEGIN{for (i = $first; i <= $last; i += $step)
printf \"%0${width}d\n\", i}"
)
unset -v IFS # make sure we get the default separator
# for the split+glob invocation below
for i in $(seq 0 6 2); do
echo "$i"
done