Apa pernyataan baris perintah untuk mengubah jam Sistem?


50

Apakah ada perintah untuk mengubah tanggal dan waktu jam Sistem?

Sebagai contoh:

Tanggal dan waktu saat ini adalah di January 1, 1970 22:30:59:980mana 59 dan 980 masing-masing mengacu pada detik dan milidetik

Dan saya ingin mengubahnya menjadi January 2, 1971 23:31:59:990

Apakah ada perintah untuk ini?


Untuk berjaga-jaga jika seseorang tertarik untuk mengubah zona waktu. askubuntu.com/questions/3375/…
nassim

Jawaban:


57

Untuk mengatur waktu di Ubuntu dari terminal, Anda dapat menggunakan perintah berikut:

sudo date new_date_time_string

di mana new_date_time_stringharus mengikuti format MMDDhhmmyyyy.ssyang dijelaskan di bawah ini:

  • MM adalah bulan dua digit, antara 01 hingga 12
  • DD adalah hari dua digit, antara 01 dan 31, dengan aturan reguler untuk hari sesuai dengan bulan dan tahun yang berlaku
  • hh adalah dua digit jam, menggunakan periode 24 jam sehingga antara 00 dan 23
  • mm adalah dua digit menit, antara 00 dan 59
  • yyyyadalah tahun; bisa dua digit atau empat digit
  • ssadalah dua digit detik. Perhatikan periode .sebelum ss.

Sumber: Kelola Waktu di Ubuntu Melalui Command Line .

Jadi, dalam kasus khusus Anda, Anda dapat menggunakan:

sudo date 010224311971.59

Atau, Anda dapat menggunakan:

sudo date --set="1971-01-02 23:31:59.990"  && date --rfc-3339=ns

itulah tepatnya yang Anda tanyakan.

Sumber: https://serverfault.com/a/338395/181186 .


apa format aktual dari tanggal string?
Abel Melquiades Callejo

apakah itu berarti akurasinya hanya terbatas pada detik ?
Abel Melquiades Callejo

@AbelMelquiadesCallejo Lihat hasil edit baru saya.
Radu Rădeanu

1
Bisakah seseorang menjelaskan? hhadalah antara 00 dan 23, tetapi OP dan jawaban ini menunjukkan sedang disetel ke 24.
Carl H

@CarlH Tangkapan bagus untuk itu! Lihat hasil edit baru
Abel Melquiades Callejo


4

Anda dapat menggunakan dateperintah untuk mengubah waktu dan Anda akan memerlukan sudoizin untuk melakukannya; contoh untuk menetapkan tanggal ke 27 Juni 2014 dan waktu ke 1:17 adalah:

sudo date --set "27 Jun 2014 1:17:00"

3

Sejak systemd diperkenalkan di Ubuntu, cara yang benar adalah:

# timedatectl set-time "RFC 3339-compliant string"

misalnya

# timedatectl set-time "2002-10-02T10:00:00-05:00"
# timedatectl set-time "10:35"
# timedatectl set-time "+2 hours"

Ini juga berfungsi dengan misalnya sudo date --set="+2 hours", yang persis apa yang saya butuhkan.
Emile Vrijdags

0

Versi singkat untuk pengaturan tanggal atau waktu saja:

Untuk mengatur tanggal (akan mengatur waktu ke 0: 0: 0):

date +%Y%m%d -s "19710102"

Untuk mengatur waktu saja:

date +%T -s "23:31:59"

Anda dapat menambahkan ".990" yang diinginkan ke detik.

Baca halaman manual untuk opsi dan format lebih lanjut mengenai perintah tanggal:

man date

Catatan: Anda mungkin juga ingin memeriksa atau mengatur jam perangkat keras. Baca tentang ini di sini .


-3
sudo date --set="Mon Feb 16 08:49:56 IST 2015"

Itu akan menjadi pernyataan yang benar di UBUNTU 14.04.


1
Untuk semua orang di zona waktu IST saja? Apakah jawaban yang lain tidak cocok untuk Anda?
Xen2050

Pertanyaannya tidak perlu mengubah zona waktu.
Abel Melquiades Callejo
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.