created: 2021-06-18T05:26:22.000Z

seq の出力を printf 形式でフォーマットする -f オプション

こんな文字列が欲しい時。

2021-06-01
2021-06-02
2021-06-03
2021-06-04
2021-06-05
2021-06-06
2021-06-07
2021-06-08
2021-06-09
2021-06-10

いままでは seq に xargs をパイプしたりしていたが、seq にフォーマットオプションがあることを知ったのでそれを使う。

for d in $(seq --format '2021-06-%02g' 10); do
    echo $d
done

参考

%02d が使えなかったので検索したらこれが出てきた。やりとりの意味が掴めなかったが、--equal-width があるから不要なはず。ということなのかな。

ユーザーの問題解決とプロダクトの成功を導く エンジニアのためのドキュメントライティング
[ad] ユーザーの問題解決とプロダクトの成功を導く エンジニアのためのドキュメントライティング
ジャレッド・バーティ, ザッカリー・サラ・コ―ライセン (単行本)