watch
perintah didokumentasikan sebagai berikut:
SYNOPSIS
watch [-dhvt] [-n <seconds>] [--differences[=cumulative]] [--help]
[--interval=<sec-onds>] [--no-title] [--version] <command>
[...]
NOTE
Note that command is given to "sh -c" which means that you may need to
use extra quoting to get the desired effect.
Bagian tentang memberikan perintah ke sh -c
berarti jobs
perintah yang Anda jalankan melalui watch
sedang berjalan di sesi shell yang berbeda dari sesi yang menelurkan pekerjaan, sehingga tidak dapat dilihat bahwa shell lainnya. Masalahnya pada dasarnya adalah jobs
adalah shell bawaan dan harus dijalankan di shell yang menelurkan pekerjaan yang ingin Anda lihat.
Cara terdekat yang bisa Anda dapatkan adalah menggunakan while loop di shell yang menghasilkan pekerjaan:
$ while true; do jobs; sleep 10; done
Anda dapat menentukan fungsi dalam skrip startup shell agar lebih mudah digunakan:
myjobwatch() { while true; do jobs; sleep 5; done; }
Kemudian Anda tinggal mengetikkan myjobwatch
.
Daripada satu lingkaran, saya cenderung menggunakan watch
dengan grep
untuk pekerjaan lari saya, misalnya
watch 'ps u | grep rsync'
Tidak sempurna, tetapi lebih baik daripada pengulangan sementara :)