Saya telah melalui tutorial dan saya menemukan sebuah perintah:
printf "%(%s)T"
Output dari perintah ini adalah:
1454299615
Adakah yang bisa memberi tahu saya apa perintah ini dan apa artinya output?
command-line
bash
rtecxs
sumber
sumber
printf
seorang builtin?/usr/bin/printf
pada Ubuntu 14.04 memberikan kesalahan:printf: %(: invalid conversion specification
. Jika Anda menggunakanbash
. Cobaman bash
untuk dokumentasi bawaan.Jawaban:
Ini cara untuk mengekspresikan waktu yang diformat
printf
.Formatnya adalah:
Di mana
FORMAT
didefinisikan olehstrftime(3)
.Jadi untuk mendapatkan waktu jaman (Waktu dalam detik sejak 1970-01-01 00:00:00 UTC), kita perlu
strftime(3)
format%s
:Perhatikan bahwa
\n
pada akhirnya Anda perlu menambahkan baris baru karenaprintf
(tidak sepertiecho
) tidak menambahkannya secara default.Contoh:
Hanya demi kelengkapan, Anda juga dapat menggunakan
date
perintah denganstrftime(3)
cara yang diformat serupa untuk mendapatkan waktu:CATATAN : Perilaku ini khusus untuk
bash
's danksh
' s built-in fungsiprintf
, dan tidak bekerja dengan/usr/bin/printf
,csh
danzsh
built-in.sumber
printf(1)
halaman manual.printf
adalah builtin di sini (meskipun yang eksternal memiliki perilaku yang sama) .. periksahelp printf
..