nesheep5's blog

子持ちWebエンジニアのブログ。プログラミング・仕事効率化・健康・子育て etc...

fishで連番のディレクトリを作る方法

先に結論

seqコマンドを利用する。

mkdir hoge_(seq 1 5)ls
hoge_1 hoge_2 hoge_3 hoge_4 hoge_5

0パディングしたいときはseq -f でformat指定できる。

mkdir hoge_(seq -f %03g 1 5)ls
hoge_001 hoge_002 hoge_003 hoge_004 hoge_005

※検証環境

➤ fish -v
fish, version 3.0.2

fishはブレース展開されない

bashでは{1..5}のようにブレース展開を利用して以下のように書けます。

➤ bash
bash-3.2$ mkdir hoge_{1..5}
bash-3.2$ ls
hoge_1      hoge_2      hoge_3      hoge_4      hoge_5

fishではブレース展開は行われないため、同じコマンドを実行するを以下のようになってしまいます。

mkdir hoge_{1..5}ls
hoge_1..5

一つ勉強になりました。