#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)

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS