Cara Bekerja Dengan Tarikh dan Masa di Bash Menggunakan Perintah Tarikh

Cara Bekerja Dengan Tarikh dan Masa di Bash Menggunakan Perintah Tarikh

Perintah Tarikh adalah program bash luaran yang membolehkan untuk menetapkan atau memaparkan tarikh dan masa sistem. Ia juga menyediakan beberapa pilihan pemformatan. Perintah Tarikh dipasang di semua distros Linux secara lalai.

$ Tarikh Tipe $ yang mana -a tarikh 
Cari Lokasi Perintah Tarikh

Jenis Perintah Tarikh di terminal yang akan memaparkan tarikh dan masa semasa.

$ tarikh 
Tarikh Semak di Linux

Tukar Tarikh dan Masa Sistem Linux

Menggunakan Perintah Tarikh, Tarikh Sistem, Masa dan Zon Time dapat diubahsuai dan perubahan harus diselaraskan dengan jam perkakasan.

$ tarikh - -set = "Thu Nov 12 13:06:59 IST 2020" $ hwclock --systohc 
Tetapkan tarikh dan masa sistem Linux

Pilihan pemformatan

Tempat yang baik untuk mendapatkan senarai pilihan pemformatan akan menjadi halaman lelaki.

$ lelaki tarikh 

Mari lihat beberapa pilihan pemformatan yang paling biasa yang akan kita gunakan.

  • Untuk menggunakan penggunaan pemformatan "+ diikuti oleh "formatter".
  • Untuk mendapatkan senarai pilihan pemformatan untuk gnu \ linux lihat halaman lelaki yang dipautkan.
  • Untuk mendapatkan senarai pilihan pemformatan untuk BSD lihat halaman Linked Man.

Dua bahagian penting di Perintah Tarikh menggunakan format +% dan pilihan.

Sekarang mari kita gunakan beberapa pemformatan pada Perintah Tarikh. Untuk memohon pemformatan, tambahkan tanda tambah (+) diikuti oleh %formatter seperti yang ditunjukkan dalam contoh.

Tarikh pengendalian di Linux

Mari kita lihat cara menggunakan formatters berkaitan tarikh dalam skrip shell mudah yang dipanggil 'Tarikh.sh'.

# Tahun cetak, bulan, hari dan tarikh ... echo "Kami berada di tahun = $ (tarikh + %y)" echo "kami berada di tahun = $ (tarikh + %y)" # perbezaan antara %y dan %y adalah %y akan mencetak 4 digit manakala %y akan mencetak 2 digit terakhir tahun ini. echo "Kami berada dalam bulan = $ (tarikh +%m)" echo "kami berada dalam bulan = $ (tarikh +%b)" echo "kami berada dalam bulan = $ (tarikh +%b)" # perbezaan Antara %B dan %B adalah, %B akan mencetak nama bulan penuh manakala %b akan mencetak nama bulan disingkat. echo "hari semasa bulan = $ (tarikh +%d)" echo "hari semasa minggu = $ (tarikh +%a)" echo "hari semasa minggu = $ (tarikh +%a)" perbezaan # Antara %A dan %A adalah, %A akan mencetak nama hari minggu penuh manakala %A akan mencetak nama hari kerja yang disingkat. # Daripada memformat untuk mendapatkan tarikh, kita boleh menggunakan %d yang akan mencetak tarikh sebagai %m/ %d/ %y atau %f yang dicetak dalam %y- %m- %d format. echo "tarikh menggunakan %d = $ (tarikh + %d)" echo "tarikh menggunakan %f = $ (tarikh + %f)" 
Cari tarikh dan masa menggunakan skrip

Mengendalikan masa di linux

Mari kita lihat cara menggunakan masa Formatters yang berkaitan dalam skrip shell ringkas yang disebut 'masa.sh'.

# Jam cetak, minit, saat, nano saat echo jam = $ (tarikh +%h) echo minit = $ (tarikh +%m) echo saat = $ (tarikh +%s) echo nanoseconds = $ (tarikh +%n) echo masa zaman = $ (tarikh +%s) echo "masa semasa = $ (tarikh +%h:%m:%s:%n)" # juga boleh menggunakan%t yang memaparkan masa dalam hh: mm: ss format. echo "Masa semasa dalam format 24 jam = $ (tarikh + %t)" # juga boleh menggunakan %r untuk memaparkan masa dalam format 12 jam. echo "Masa semasa dalam format 12 jam = $ (tarikh +%r)" 
Cari Masa di Linux Menggunakan Skrip

Dengan -date atau -d bendera

Dengan --Tarikh atau -d input bendera boleh diluluskan sebagai rentetan dan Perintah Tarikh tahu untuk mengatasinya dengan bijak.

Mari lihat beberapa contoh untuk memahami bagaimana ia berfungsi.

# Cetak tarikh dan masa semalam. echo "semalam = $ (tarikh -d" semalam ")" cetak tarikh dan masa esok. echo "esok = $ (tarikh -d" esok ")" cari berapa tarikh dan waktu sebelum 10 hari dari sekarang. echo "sebelum 10 hari = $ (tarikh -d" esok -10 hari ")" cari bulan lepas dan bulan depan echo "bulan lalu = $ (tarikh -d" bulan lepas ""%b ")" echo "bulan depan = $ (tarikh -d "bulan depan" "%b") "cari tahun lepas dan tahun depan echo" tahun lepas = $ (tarikh -d "tahun lepas" "+%y") "echo" tahun depan = $ (tarikh -d "tahun depan" "+%y") "meramalkan hari kerja echo" 2 hari jauh dari hari ini dan ia datang pada hari kerja? = $ (tarikh -d "hari ini +2 hari" " +%a") 
Tarikh semak menggunakan pemformatan

Operasi biasa

Kirakan bilangan hari antara 2 tarikh yang diberikan.

$ echo $ ((($ (tarikh -d "2020-11-10" "+%s")-$ (tarikh -d "2020-11-01" "+%s")) / 86400)) 

Cari tahun yang diberikan adalah tahun lompat atau tidak.

$ untuk y dalam 2000 ... 2020; do date -d $ y-02-29 &>/dev/null && echo $ y adalah leap year; selesai 
Cari Leap Year di Linux

Menetapkan output arahan tarikh kepada pemboleh ubah.

$ Hari ini = $ (tarikh +%y-%m-%d) atau $ hari ini1 = $ (tarikh +%f) $ echo $ today $ echo $ today1 
Menetapkan tarikh kepada pemboleh ubah

Buat fail log dengan tarikh ditambah ke nama fail.

Menambah tarikh dan masa semasa membuat fail log, sandaran, atau fail teks adalah operasi biasa yang akan kami hadapi paling kerap. Mari ambil contoh, untuk mengambil sandaran, kami telah membuat skrip shell.

Skrip ini akan mengambil sandaran dari 00:00 hingga 23:59 dan dijadualkan berjalan setiap hari pada 00:00 pada keesokan harinya. Kami mahu membuat fail log dengan format tarikh semalam.

Custom_format = $ (tarikh --date "semalam" "+%d-%y-%h:%m") log_file =/var/log/custom_application/aplikasi _ $ custom_format.Log echo "Skrip Bermula" >> $ Log_File ... Blok Kod ... echo "Skrip siap" >> $ log_file 

Itu sahaja untuk artikel ini. Dalam artikel ini, kita telah melihat cara menggunakan tarikh dan masa bash di linux. Beritahu kami maklum balas anda.