Perintah watch: Cara Pakai, Interval -n, Sorotan -d, dan Keluar Saat Output Berubah

Lingkungan ujiKeluarga RHELAlmaLinux 9.8procps-ng 3.3.17akun rootDebian 12 · procps-ng 4.0.2 akun biasa
Perintah Proses · Penjadwalan TugaswatchLokasi/usr/bin/watchDiperiksa 2026-11-05
Memantau perubahan output perintah

Perintah watch adalah perintah Linux yang menjalankan ulang perintah yang ditentukan setiap 2 detik dan menggambar ulang output-nya di seluruh layar terminal. Saat file di server AlmaLinux 9 dipantau dengan watch sambil diubah dari jendela lain, opsi -d menyorot karakter yang berubah dan opsi -g mengakhiri watch setelah output berubah.

Output di bawah berasal dari folder kerja di server AlmaLinux 9.8, dijalankan sebagai root; di server Debian 12 hanya versinya yang diperiksa. Nama host di baris header di bagian atas layar diganti dengan nilai contoh server1, dan waktu ditampilkan dalam UTC.

1️⃣ Cara memakai perintah watch

  • ↪️ Interval bawaan 2 detik dan keluar dengan Ctrl+C

Tulis perintah yang ingin dijalankan ulang setelah watch; tanpa opsi, perintah itu dijalankan setiap 2 detik dan layar diganti dengan output baru. Saat date dipantau, baris header muncul di bagian atas layar, lalu setelah satu baris kosong muncul output date.

watch date
Every 2.0s: date                                                   server1: Thu Oct 29 02:28:07 2026

Thu Oct 29 02:28:07 UTC 2026

Sisi kiri baris header berisi interval pembaruan dan perintah yang sedang berjalan, sedangkan sisi kanan berisi nama host dan waktu eksekusi terakhir. Saat layar yang sama diperiksa lagi 2 detik kemudian, waktu di header dan output date sama-sama sudah berubah.

Every 2.0s: date                                                   server1: Thu Oct 29 02:28:09 2026

Thu Oct 29 02:28:09 UTC 2026

watch terus berjalan sampai Anda menghentikannya sendiri, jadi akhiri dengan Ctrl+C. Setelah Ctrl+C ditekan, layar watch hilang dan prompt kembali. Kode keluar yang diperiksa sesudahnya adalah 0.

echo $?
0

watch dipakai untuk mengulang perintah yang mencetak output sekali lalu selesai. Untuk melihat perubahan pemakaian CPU dan memori per proses, lebih cocok memakai perintah top, yang menggambar ulang layarnya sendiri.

watch termasuk dalam paket procps-ng. Versinya diperiksa dengan [watch -v]; di server AlmaLinux 9.8 versinya 3.3.17 dan di server Debian 12 versinya 4.0.2.

watch -v
watch from procps-ng 3.3.17
watch -v
watch from procps-ng 4.0.2

2️⃣ Opsi interval dan sorotan watch

  • ↪️ Interval -n, sorotan -d, dan -t untuk menyembunyikan header

Angka detik setelah -n mengubah interval pembaruan. Setelah [watch -n 1 date] dijalankan, sisi kiri header berubah menjadi Every 1.0s.

watch -n 1 date
Every 1.0s: date                                                   server1: Thu Oct 29 02:28:15 2026

Thu Oct 29 02:28:15 UTC 2026

Menurut halaman man, interval tidak bisa lebih pendek dari 0,1 detik, dan nilai yang lebih kecil diubah menjadi 0,1 detik. Titik maupun koma dikenali sebagai pemisah desimal.

-d menyorot karakter yang berbeda dari pembaruan sebelumnya. Selama size.log di folder kerja dipantau dengan [ls -l], satu baris ditambahkan ke file itu dari jendela lain.

watch -d -n 1 ls -l size.log
Every 1.0s: ls -l size.log                                         server1: Thu Oct 29 02:28:53 2026

-rw-r--r-- 1 root root 7 Oct 29 02:28 size.log
printf 'line 2\n' >> size.log

Saat ukuran file berubah dari 7 menjadi 14, semua bagian dari kolom ukuran sampai akhir baris disorot. Angkanya bertambah satu digit sehingga semua karakter sesudahnya bergeser satu posisi. Pada pembaruan berikutnya nilainya tetap sehingga sorotan hilang.

Every 1.0s: ls -l size.log                                         server1: Thu Oct 29 02:28:54 2026

-rw-r--r-- 1 root root 14 Oct 29 02:28 size.log

Untuk terus menyorot semua bagian yang berubah sejak eksekusi pertama, gunakan [--differences=permanent] (menurut halaman man).

-t menghapus baris header dan baris kosong di bawahnya sehingga hanya output perintah yang tersisa.

watch -t -n 1 date
Thu Oct 29 02:28:19 UTC 2026

3️⃣ Kondisi keluar dan opsi perintah watch

  • ↪️ -g untuk perubahan output dan -e untuk error

-g mengakhiri watch saat output perintah berubah. Opsi ini dipakai untuk menunggu isi file status berubah sebelum lanjut ke pekerjaan berikutnya.

watch -g -n 1 cat status.txt
Every 1.0s: cat status.txt                                         server1: Thu Oct 29 02:29:12 2026

running

Dari jendela lain, perintah di bawah mengubah isi status.txt menjadi done.

printf 'done\n' > status.txt

Lalu watch berakhir, prompt kembali, dan kode keluarnya 0.

echo $?
0

-e menghentikan pembaruan layar saat perintah selesai dengan kode keluar selain 0. Saat file yang tidak ada di folder kerja dipantau dengan ls, muncul output error ls dan, di baris paling bawah layar, pemberitahuan bahwa menekan tombol akan keluar.

watch -e -n 1 ls nofile.txt
Every 1.0s: ls nofile.txt                                          server1: Thu Oct 29 02:29:18 2026

ls: cannot access 'nofile.txt': No such file or directory










command exit with a non-zero status, press a key to exit

Waktu di header berhenti pada saat tepat setelah eksekusi, dan menekan satu tombol mengakhiri watch. Kode keluarnya kali ini 8.

echo $?
8

Halaman man menjelaskan kode keluar 8 sebagai nilai yang mencakup kasus perintah selesai dengan error.

📌 Opsi utama: hasil dari artikel ini

OpsiFungsiHasil di artikel ini
-n detikMengubah interval pembaruan (bawaan 2 detik)Header berubah menjadi Every 1.0s
-dMenyorot karakter yang berbeda dari pembaruan sebelumnyaDengan ukuran 7 → 14, disorot dari kolom itu sampai akhir baris, hilang pada pembaruan berikutnya
-tMenyembunyikan baris header dan baris kosong di bawahnyaHanya satu baris output date yang tersisa
-gMengakhiri watch saat output berubahBerakhir setelah running → done, kode keluar 0
-eMenghentikan layar saat perintah selesai dengan errorBerakhir setelah tombol ditekan, kode keluar 8
-vMenampilkan informasi versiServer AlmaLinux 9.8: watch from procps-ng 3.3.17, server Debian 12: watch from procps-ng 4.0.2

📎 Opsi lainnya: menurut manual resmi

OpsiFungsi
-bMembunyikan bip saat perintah selesai dengan kode keluar selain 0
-cMenafsirkan kode warna dan gaya ANSI agar output perintah tetap berwarna
-pMenjalankan tepat di setiap interval agar waktu pembaruan tidak bergeser mundur
-xMenjalankan perintah dengan exec, bukan sh -c, sehingga tanda kutip yang diperlukan lebih sedikit
-wMemotong baris panjang alih-alih membungkusnya ke baris berikutnya
--differences=permanentTerus menyorot semua bagian yang berubah sejak eksekusi pertama
-hMenampilkan bantuan

4️⃣ Tanda kutip dan pipe pada perintah watch

  • ↪️ Mengapit dengan tanda kutip tunggal dan memantau pemakaian disk

watch menjalankan perintah yang diterimanya dengan sh -c, jadi perintah yang berisi pipe(|) atau $ harus diapit seluruhnya dengan tanda kutip tunggal. Saat jumlah file di folder kerja dipantau dengan [ls | wc -l], header menampilkan seluruh perintah, termasuk pipe.

watch -n 1 'ls | wc -l'
Every 1.0s: ls | wc -l                                             server1: Thu Oct 29 02:30:22 2026

6

Saat satu file lagi dibuat dari jendela lain, angkanya berubah dari 6 menjadi 7 pada pembaruan berikutnya.

printf 'c\n' > q3.txt
Every 1.0s: ls | wc -l                                             server1: Thu Oct 29 02:30:24 2026

7

Jika [watch -n 1 ls | wc -l] diketik tanpa tanda kutip, shell memisahkan pipe lebih dulu sehingga seluruh output layar watch masuk ke wc. Karena itu, jika perintah yang dipantau berisi pipe, apit seluruh perintah dengan tanda kutip.

$ mengikuti aturan yang sama. Saat [watch -n 1 echo $$] dijalankan tanpa tanda kutip, shell saat ini lebih dulu mengubah $$ menjadi angka, dan angka itu juga muncul di perintah pada header.

watch -n 1 echo $$
Every 1.0s: echo 3755802                                           server1: Thu Oct 29 02:29:37 2026

3755802

Jika diapit tanda kutip tunggal, $$ diteruskan apa adanya, sehingga header menampilkan echo $$ dan setiap pembaruan mencetak PID sh yang baru dijalankan.

watch -n 1 'echo $$'
Every 1.0s: echo $$                                                server1: Thu Oct 29 02:29:40 2026

3756270
Every 1.0s: echo $$                                                server1: Thu Oct 29 02:29:41 2026

3756333

PID shell saat ini yang diperiksa dengan [echo $$] sama dengan angka yang tetap saat dijalankan tanpa tanda kutip.

echo $$
3755802

Nilai yang berubah perlahan, seperti pemakaian disk, dipantau dengan interval beberapa detik. Perintah du: -s hanya menampilkan total dan -h menampilkan ukuran dalam satuan seperti K dan M. Selama folder kerja dipantau dengan [du -sh .], menambahkan 8.001 byte ke file log dari jendela lain mengubah 28K menjadi 36K pada pembaruan berikutnya.

watch -n 2 du -sh .
Every 2.0s: du -sh .                                               server1: Thu Oct 29 02:30:34 2026

28K     .
printf '000d\n' 0 >> grow.log
Every 2.0s: du -sh .                                               server1: Thu Oct 29 02:30:36 2026

36K     .

🔲 Simulator perintah watch

Di simulator di bawah, jalankan watch lalu ubah file dengan chip [🖊 Jendela lain] untuk melihat sendiri bagaimana layar berubah.

Simulator perintah watchprocps-ng 3.3.17
[root@server work]#
Hanya berjalan di browser Anda. Di layar watch, ubah file dengan chip [Jendela lain] dan akhiri dengan Ctrl+C.

🔢 FAQ & Konten yang Direkomendasikan

Menurut halaman man, jika Anda mengisi variabel lingkungan WATCH_INTERVAL dengan jumlah detik, nilai itu dipakai sebagai interval saat -n tidak ditulis. Nilainya mengikuti aturan yang sama dengan -n, jadi tidak bisa lebih pendek dari 0,1 detik.

Menurut halaman man, watch menghapus karakter kontrol dalam output sebelum menggambarnya. Untuk tetap melihat warna saat memantau perintah yang mencetak output berwarna, tambahkan -c seperti [watch -c].

Menurut halaman man, pada eksekusi biasa bagian pecahan detik dari waktu pembaruan bertambah sedikit setiap kali diperbarui. Dengan -p, watch dijalankan tepat di setiap interval sehingga bagian itu tetap hampir sama.

ℹ️ Pemberitahuan Afiliasi
Konten di situs ini berisi tautan afiliasi. Jika pengunjung membeli produk atau layanan melalui tautan tersebut, situs ini menerima komisi dari penjual. Harga yang dibayar pembeli(turun saat ada diskon promo ↓), tidak naik karena hal ini. Harga, diskon, dan informasi stok yang ditampilkan berlaku pada saat penulisan dan bisa berbeda dengan kondisi sebenarnya, jadi pastikan kembali di situs penjual sebelum membeli. Pemilihan dan penilaian produk dibuat berdasarkan standar kami sendiri, dan ada tidaknya komisi tidak memengaruhi urutan maupun isi penilaian.

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *

Buktikan bahwa Anda manusia: 3   +   10   =