以前まで知らなかった小ネタを社外向けにも書いておきます。
普段の仕事で日付を扱う際、strftimeで文字列を組み立てることが多いのですが、その際にゼロ埋めをやめたいということがあった。てっきりstrftimeでは勝手にゼロ埋めするので、ゼロ埋めやめたいときは月の数字と日の数字を別々に分割して利用するしかないと思っていたのですが、strftimeのglibc拡張では元からこれに対応しているようでした。
man strftime
man コマンドを眺めると以下のように書いてありました。
%-* GNU libc extension. Do not do any padding when performing numerical outputs. %_* GNU libc extension. Explicitly specify space for padding. %0* GNU libc extension. Explicitly specify zero for padding.
つまり、 %m
の代わりに %-m
を使うとゼロ埋めがされていない状態にできるらしい。
手軽に試す方法
ターミナルでdateコマンドを使うと試せる。こんな感じでした。
$ date +%Y/%m/%d 2021/09/09 $ date +%Y/%-m/%-d 2021/9/9 $ date +%Y/%_m/%_d 2021/ 9/ 9 $ date +%Y/%0m/%0d 2021/09/09