Konversi tanggal zaman ke format yang dapat dibaca manusia?


3
echo "$some_string" | awk -F '|' '{print $1 $2}'

$2 adalah tanggal yang penting dan saya ingin mengubahnya menjadi format yang dapat dibaca manusia. Saya mencoba melakukannya date -r $2 tapi tidak berhasil.

Jawaban:


3

Jika Anda bisa mendapatkan GNU awk di mac Anda (melalui homebrew), Anda dapat melakukan:

gawk '{print $1, strftime("%Y-%m-%d %H:%M:%S", $2)}'

cicipi format datetime Anda yang sesuai.

Jika tidak, Anda dapat memanggil tanggal dari dalam awk:

awk '{
    cmd = "date -d \"@" $2 "\" \"+%Y-%m-%d %H:%M:%S\""
    cmd | getline datetime
    close(cmd)
    print $1, datetime
}'

Saya tidak memiliki akses ke mac, jadi Anda harus menyesuaikan argumen tanggal Anda.


2
echo "$some_text" | awk -F'|' '{
    cmd = "date -r "$2" \"+%Y-%m-%d %H:%M:%S\""
    cmd | getline datetime
    close(cmd)
    print "text: "$1 "\ndate: "datetime"\n"
}'
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.