2017-11-25 23:35:08
日付を(yyyy-mm-dd hh:mm:ss
)から次に変更したいと思います。
Sat Nov 25 23:35:08 IST 2017
私はそれを試しましたが、echo 2017-11-25 | gawk '{print strftime("%c", $4)}'
動作しません。
ベストアンサー1
GNUの使用date
:
$ date -d "2017-11-25 23:35:08"
Sat Nov 25 23:35:08 CET 2017
結果はローカルタイムゾーン(およびローカルロケール)として表示されます。
IST タイムゾーンを明示的にリクエストするには、次を使用します。
$ TZ=Asia/Calcutta date -d "2017-11-25 23:35:08"
Sat Nov 25 23:35:08 IST 2017
POSIX/C ロケールの形式もインポートするには、次の手順を実行します。
$ LC_TIME=C TZ=Asia/Calcutta date -d "2017-11-25 23:35:08"
Sat Nov 25 23:35:08 IST 2017
strftime()
GNU awk
(および)の関数は、mawk
文字列を2番目の引数として使用せず、Unixタイムスタンプを使用します。mktime()
必要な形式に変換を使用して時間をUnixタイムスタンプに変換する必要がありますstrftime()
。呼び出しには、mktime()
まず入力を個々の年、月、日などに分割する必要があります。
また、$4
関数を呼び出すと空になります(入力に4番目のフィールドがありません)。