Hitung perbedaan antara dua tanggal dalam pesta

Hitung perbedaan antara dua tanggal dalam pesta

Dalam bash, Anda dapat dengan mudah menghitung perbedaan antara dua tanggal. Ini dapat berguna dalam berbagai skenario, seperti menghitung jumlah hari antara dua peristiwa atau menentukan usia seseorang. Di artikel ini, kita akan membahas berbagai metode untuk menghitung perbedaan antara dua tanggal dalam bash.

Hitung perbedaan antara dua tanggal

Perintah 'tanggal' dalam bash dapat digunakan untuk menghitung perbedaan antara dua tanggal. Sintaks untuk menggunakan perintah 'tanggal' adalah sebagai berikut:

echo $ ((($ (tanggal -d "yyyy-mm-dd" +%s)-$ (tanggal -d "yyyy-mm-dd" +%s))/86400))))
1echo $ ((($ (tanggal -d "yyyy-mm-dd" +%s)-$ (tanggal -d "yyyy-mm-dd" +%s))/86400))))

Dalam perintah di atas, ganti “Yyyy-mm-dd” Dengan dua tanggal yang ingin Anda bandingkan dalam format yang sama. Perintah akan menghasilkan jumlah hari antara dua tanggal.

Mari kita lihat sebuah contoh. Jika Anda ingin menghitung jumlah hari antara 1 Januari 2023 Dan 28 Februari 2023, Anda dapat menggunakan perintah berikut:

echo $ ((($ (tanggal -d "2023-02-28" +%s)-$ (tanggal -d "2023-01-01" +%s))/86400))))
1echo $ ((($ (tanggal -d "2023-02-28" +%s)-$ (tanggal -d "2023-01-01" +%s))/86400))))

Output dari perintah ini adalah:

58
158

Ini berarti ada 58 hari Antara 1 Januari 2023 dan 28 Februari 2023.

Metode 2: Menggunakan perintah 'BC'

Perintah 'BC' dalam bash dapat digunakan untuk melakukan perhitungan matematika. Untuk menghitung perbedaan antara dua tanggal menggunakan perintah 'BC', gunakan sintaks berikut:

echo \ ($ (tanggal -d "yyyy-mm-dd" +%s)-$ (tanggal -d "yyyy-mm-dd" +%s) \) / 86400 | bc
1echo \ ($ (tanggal -d "yyyy-mm-dd" +%s)-$ (tanggal -d "yyyy-mm-dd" +%s) \) / 86400 | bc

Dalam perintah di atas, ganti “Yyyy-mm-dd” Dengan dua tanggal yang ingin Anda bandingkan dalam format yang sama. Perintah akan menghasilkan jumlah hari antara dua tanggal.

Misalnya:

echo \ ($ (tanggal -d "2023-02-28" +%s)-$ (tanggal -d "2023-01-01" +%s) \) / 86400 | BC #Output: 58
123echo \ ($ (tanggal -d "2023-02-28" +%s)-$ (tanggal -d "2023-01-01" +%s) \) / 86400 | BC #Output: 58

Metode 3: Menggunakan perintah 'awk'

Perintah 'awk' dalam bash juga dapat digunakan untuk menghitung perbedaan antara dua tanggal. Gunakan sintaks berikut:

echo $ (tanggal -d "yyyy-mm-dd" +%s) $ (tanggal -d "yyyy-mm-dd" +%s) | awk 'print ($ 1 - $ 2) / 86400'
1echo $ (tanggal -d "yyyy-mm-dd" +%s) $ (tanggal -d "yyyy-mm-dd" +%s) | awk 'print ($ 1 - $ 2) / 86400'

Dalam perintah di atas, ganti “Yyyy-mm-dd” Dengan dua tanggal yang ingin Anda bandingkan dalam format yang sama. Perintah akan menghasilkan jumlah hari antara dua tanggal.

Misalnya:

echo $ (tanggal -d "2023-02-28" +%s) $ (tanggal -d "2023-01-01" +%s) | awk 'print ($ 1 - $ 2) / 86400' #Output: 58
123echo $ (tanggal -d "2023-02-28" +%s) $ (tanggal -d "2023-01-01" +%s) | awk 'print ($ 1 - $ 2) / 86400' #Output: 58

Kesimpulan

Menghitung perbedaan antara dua tanggal dalam bash dapat dilakukan dengan menggunakan perintah yang berbeda, seperti 'tanggal', 'bc', dan 'awk'. Dengan menggunakan perintah ini, Anda dapat dengan mudah menghitung jumlah hari antara dua tanggal. Mengetahui cara menghitung perbedaan antara dua tanggal dapat berguna dalam berbagai skenario, seperti menghitung usia seseorang atau jumlah hari antara dua peristiwa.