#navi(../)
* dateコマンドで日付の先頭をスペースにしたり0にする方法 [#x473da63]
dateコマンドの書式設定で、日付を表示する方法に%dがあります。~
日の書式 %d では、01~31 が返却されます。~
月も同様で %m を指定するとでは、01~12 が返却されます。~
これを 1~31 や _1~31 , 1~12 や _1~12 にする方法を以下に記します。~
(本資料では、月と日を例にあげていますが、時分秒も同様の記述および動作になります。)
#contents
#htmlinsertpcsp(linux_ads_top.html,linux-sp.html)
* -(マイナス)をつけることにより、0を削除 [#d0b594c6]
以下に、日および月の例を記します。~
オプション-sにより日付を指定し、書式にあわせた表示ができるので、-sオプションを併用し例を記します。
- 通常
$ date -s "1999/1/1 1:1:1" +"%Y/%m/%d %H:%M:%S"
1999/01/01 01:01:01
#br
-マイナスをつけて先頭の0を削除する
$ date -s "1999/1/1 1:1:1" +"%Y/%-m/%-d %H:%M:%S"
1999/1/1 01:01:01
上記の出力例の通り、月日の0が削除されているのが確認できます。~
- 番外(時分秒)
$ date -s "1999/1/1 1:1:1" +"%Y/%m/%d %-H:%-M:%-S"
1999/01/01 1:1:1
* _(アンダースコア)をつけることにより、0をスペースに変換 [#ob8534e1]
以下に、日および月の例を記します。~
オプション-sにより日付を指定し、書式にあわせた表示ができるので、-sオプションを併用し例を記します。
- 通常
$ date -s "1999/1/1 1:1:1" +"%Y/%m/%d %H:%M:%S"
1999/01/01 01:01:01
#br
- アンダースコアつけて先頭の0をスペースにする
$ date -s "1999/1/1 1:1:1" +"%Y/%_m/%_d %H:%M:%S"
1999/ 1/ 1 01:01:01
- 番外(時分秒)
$ date -s "1999/1/1 1:1:1" +"%Y/%_m/%_d %_H:%_M:%_S"
1999/ 1/ 1 1: 1: 1
以上、dateコマンドの月日(時分秒)の先頭が0の場合、0削除、スペース変換をする方法でした。
#htmlinsertpcsp(linux_ads_btm.html,linux-sp.html)