GNU/Linux >> Belajar Linux >  >> Linux

Perintah Tanggal Memberikan Nomor Minggu yang Salah untuk 31 Desember

Ini memberi Anda minggu ISO yang dimulai pada hari Senin.

Sistem tanggal minggu ISO secara efektif adalah sistem kalender minggu kabisat yang merupakan bagian dari standar tanggal dan waktu ISO 8601 yang dikeluarkan oleh Organisasi Internasional untuk Standardisasi (ISO) sejak 1988 (terakhir direvisi pada tahun 2004) dan, sebelum itu, didefinisikan dalam ISO (R) 2015 sejak 1971. Ini digunakan (terutama) di pemerintahan dan bisnis untuk tahun fiskal, serta ketepatan waktu. Ini sebelumnya dikenal sebagai "Pengkodean tanggal industri". Sistem menentukan tahun minggu di atas kalender Gregorian dengan menentukan notasi untuk minggu ordinal dalam setahun.


Tahun penomoran minggu ISO (juga disebut tahun ISO secara informal) memiliki 52 atau 53 minggu penuh. Itu adalah 364 atau 371 hari, bukan 365 atau 366 hari biasa. Minggu ekstra terkadang disebut sebagai minggu kabisat, meskipun ISO 8601 tidak menggunakan istilah ini.

Minggu dimulai dengan hari Senin. Setiap tahun minggu adalah tahun Gregorian di mana hari Kamis jatuh. Minggu pertama tahun ini, karenanya, selalu berisi 4 Januari. Oleh karena itu, penomoran tahun minggu ISO sedikit menyimpang dari Gregorian untuk beberapa hari mendekati 1 Januari.

Jika Anda ingin menampilkan 31/12 sebagai minggu ke-52, Anda harus menggunakan %U , yang tidak menggunakan standar ISO:

$ date -d "2018-12-31T1:58:55" +"%V%a"
01Mon
$ date -d "2018-12-31T1:58:55" +"%U%a"
52Mon

Definisi nomor minggu berbeda antara Eropa dan Amerika Serikat, mungkin standar ISO versus ANSI. Ini mungkin terkait dengan minggu menjadi Minggu--Sabtu atau Senin-Minggu, dan ini lagi mungkin terkait dengan definisi Yahudi versus Kristen tentang Hari Tuhan (Sabat vs Minggu).

Untuk Eropa, minggu nomor 1 berisi Kamis pertama di bulan Januari, dan karenanya berisi minimal 4 hari (yaitu mayoritas) milik tahun baru (Kamis-Jumat-Sabtu-Minggu).

Ngomong-ngomong, di tahun-tahun ketika SEMUA (!!) angka minggu adalah +/- 1 berbeda antara Eropa dan Amerika Serikat, ini sangat menyenangkan dengan mengatur jadwal di perusahaan multi-nasional. :-)


Linux
  1. Tetapkan Tanggal dan Waktu untuk Setiap Perintah yang Anda Jalankan di Bash History

  2. Contoh Perintah DNF Untuk Pemula

  3. Hitung Jumlah Hari Untuk Pembayaran?

  1. tanggal:perintah tidak ditemukan

  2. Cetak tanggal untuk hari Senin minggu ini (dalam bash)

  3. Apakah ada perintah untuk mundur beberapa langkah dalam direktori, tanpa menggunakan cd?

  1. 8 Contoh Perintah Tanggal Cepat di Linux

  2. Cara Mengeksekusi Perintah Ping Hanya Untuk N jumlah Paket

  3. gpspipe mengembalikan stempel waktu yang benar, tetapi tanggal yang salah (21 Desember 1995)