Saya mencoba menjalankan perintah tanggal di server unix untuk kemarin. Perintah yang dicoba adalah:
date --date="1 day ago"
date --date="1 days ago"
date --date="yesterday"
date --date="-1 day"
Perintah ini bekerja di server tetapi perintah yang sama tidak berfungsi di beberapa server lain, di mana tanggal mencetak dengan benar tanggal saat ini. Adakah yang bisa menyarankan apa yang bisa menjadi masalah dengan server lain? Saya mendapatkan kesalahan seperti:illegal option -- date=1 day ago
Rincian server: SunOS wupsa02a0014 5.10 Generic_147440-15 sun4u sparc SUNW, SPARC-Enterprise
uname -a
untuk server di mana ini tidak berfungsi.--date="1 day ago"
tidak portabel.Jawaban:
--date
bukan pilihan tanggal konvensional pada banyak sistem unix.Jika Anda memiliki berbagai platform UNIX / linux-seperti untuk bekerja dengan, cobalah untuk memeriksa halaman manual untuk tanggal (1) pada masing-masing (jika halaman manual diinstal) dan melihat opsi tanggal apa yang umum untuk mereka semua sebagai titik awal.
Anda mungkin menemukan date -v (sesuaikan) yang cukup portabel.
Sesuatu seperti
date -v-1d
mungkin berhasil. Uji pada setiap sistem untuk melihat apakah itu bekerja pada mereka semua. Ini menampilkan nilai data saat ini disesuaikan satu hari di masa lalu.sumber
Anda cukup mengurangi 24 jam dari
TZ
variabel lingkungan sebelum menelepondate
.Bekerja pada Solaris dan Linux.
sumber