Cara menjalankan atau mengulangi perintah linux setiap x detik selamanya

Cara menjalankan atau mengulangi perintah linux setiap x detik selamanya

Administrator sistem sering perlu menjalankan perintah berulang kali dalam periode waktu tertentu. Seringkali tugas seperti itu dapat dengan mudah diselesaikan dengan perintah cron sederhana. Dalam sebagian besar kasus ini harus berhasil, tetapi periode terpendek yang dapat Anda jalankan cron command adalah setiap 1 menit. Percaya atau tidak, dalam banyak kasus ini terlalu lambat.

Jalankan perintah Linux setiap detik

Dalam tutorial ini, Anda akan mempelajari teknik skrip sederhana untuk memantau atau mengawasi perintah tertentu dalam keadaan berjalan terus menerus yang mirip dengan perintah atas (terus memantau proses dan pemanfaatan memori) untuk setiap 3 detik secara default.

Kami tidak akan berhenti untuk membahas alasannya, mengapa Anda harus sering menjalankan perintah ini. Saya percaya setiap orang memiliki alasan berbeda untuk itu dalam pekerjaan sehari -hari atau bahkan di rumah dan laptop.

1. Gunakan perintah jam tangan

Jam tangan adalah perintah linux yang memungkinkan Anda untuk menjalankan perintah atau program secara berkala dan juga menunjukkan output Anda di layar. Ini berarti Anda akan dapat melihat output program tepat waktu. Secara default Watch menjalankan kembali perintah/program setiap 2 detik. Interval dapat dengan mudah diubah untuk memenuhi kebutuhan Anda.

Pantau penggunaan memori

"Tonton" sangat mudah digunakan, untuk mengujinya, Anda dapat segera menyalakan terminal Linux dan mengetik perintah berikut:

# tonton gratis -m 

Perintah di atas akan memeriksa memori bebas sistem Anda dan memperbarui hasil perintah gratis setiap dua detik.

Pantau penggunaan memori di Linux

Seperti yang terlihat per output di atas, Anda memiliki header, menampilkan informasi tentang (dari kiri ke kanan) interval pembaruan, perintah yang sedang dieksekusi dan waktu saat ini. Jika Anda ingin menyembunyikan header ini, Anda dapat menggunakan -T pilihan.

Pertanyaan logis berikutnya adalah - bagaimana mengubah interval eksekusi. Untuk tujuan itu, Anda dapat menggunakan -N opsi, yang menentukan interval yang akan dieksekusi perintah. Interval ini ditentukan dalam hitungan detik. Jadi katakanlah Anda ingin menjalankan naskah.SH File setiap 10 detik, Anda dapat melakukannya seperti ini:

# tonton -n 10 skrip.SH 

Catatan bahwa jika Anda menjalankan perintah seperti yang ditunjukkan di atas, Anda perlu CD ke direktori (pelajari 15 contoh perintah cd) di mana skrip berada atau tentukan jalur lengkap ke skrip itu.

Opsi lain yang berguna dari perintah jam tangan adalah:

  1. -B - Membuat suara bip jika keluar dari perintah itu tidak nol.
  2. -C - Menafsirkan urutan warna ANSI.
  3. -D - menyoroti perubahan dalam output perintah.

Monitor pengguna yang masuk, uptime dan rata-rata beban

Katakanlah Anda ingin memantau pengguna yang masuk, uptime server dan memuat output rata-rata dalam fase terus menerus setiap beberapa detik, kemudian menggunakan perintah berikut seperti yang ditunjukkan:

# tonton uptime 
Tonton Linux Load Average

Untuk keluar dari perintah, tekan Ctrl+c.

Di sini, 'uptime' Perintah akan berjalan dan menampilkan hasil yang diperbarui setiap 2 detik secara default.

Pantau Kemajuan Perintah Salin

Di Linux, saat menyalin file dari satu lokasi ke lokasi lain menggunakan cp Perintah, kemajuan data tidak ditampilkan, untuk melihat kemajuan data yang disalin, Anda dapat menggunakan jam tangan Perintah bersama dengan perintah du -s untuk memeriksa penggunaan disk secara real time.

# CP Ubuntu-15.10-desktop-AMD64.iso/home/tecmint/& # watch -n 0.1 du -s/home/tecmint/ubuntu -15.10-desktop-AMD64.iso 
Pantau Kemajuan Perintah Salin

Jika Anda berpikir bahwa proses di atas terlalu rumit untuk dicapai, maka saya sarankan Anda untuk mencari perintah salin di muka, yang menunjukkan kemajuan data saat menyalin.

2. Gunakan perintah tidur

Tidur sering digunakan untuk men -debug skrip shell, tetapi memiliki banyak tujuan berguna lainnya juga. Misalnya, saat dikombinasikan dengan untuk atau ketika loop, Anda bisa mendapatkan hasil yang sangat luar biasa.

Jika Anda baru dalam skrip bash, Anda dapat memeriksa panduan kami tentang loop bash di sini.

Jika ini adalah pertama kalinya Anda mendengar tentang "tidur" perintah, digunakan untuk menunda sesuatu untuk jumlah waktu tertentu. Dalam skrip, Anda dapat menggunakannya untuk memberi tahu skrip Anda untuk menjalankan perintah 1, tunggu selama 10 detik dan kemudian jalankan perintah 2.

Dengan loop di atas, Anda dapat memberi tahu Bash untuk menjalankan perintah, tidur N jumlah detik dan kemudian jalankan perintah lagi.

Di bawah ini Anda dapat melihat contoh kedua loop:

untuk contoh loop

# untuk saya di 1 ... 10; do echo -n "Ini adalah tes di loop $ i"; tanggal ; Tidur 5; Selesai 

Satu liner di atas, akan menjalankan perintah gema dan menampilkan tanggal saat ini, total 10 kali, dengan 5 detik tidur di antara eksekusi.

Berikut output sampel:

Ini adalah tes dalam loop 1 Rabu 17 Februari 20:49:47 EET 2016 Ini adalah tes dalam loop 2 Rabu 17 Feb 20:49:52 EET 2016 Ini adalah tes dalam loop 3 Rabu 17 Feb 20:49:57 EET 2016 Ini adalah tes di loop 4 Rabu 17 Feb 20:50:02 EET 2016 Ini adalah tes di loop 5 Rabu 17 Feb 20:50:07 EET 2016 Ini adalah tes di Loop 6 Wed 17 Feb 20:50:12 EET 2016 Ini adalah tes di Loop 7 Rabu 17 Februari 20:50:17 EET 2016 Ini adalah tes di Loop 8 Wed 17 Feb 20:50:22 EET 2016 Ini adalah tes di Loop 9 Wed 17 Feb 20:50: 27 EET 2016 Ini adalah tes di loop 10 Rabu 17 Feb 20:50:32 EET 2016 

Anda dapat mengubah gema Dan tanggal Perintah dengan perintah atau skrip Anda sendiri dan ubah interval tidur sesuai kebutuhan Anda.

Sedangkan contoh loop

# sementara benar; do echo -n "Ini adalah tes while loop"; tanggal; Tidur 5; Selesai

Berikut output sampel:

Ini adalah tes saat loopwed 17 Februari 20:52:32 EET 2016 Ini adalah tes saat loopwed 17 Februari 20:52:37 EET 2016 Ini adalah tes saat loopwed 17 Feb 20:52:42 EET 2016 Ini adalah Tes saat loopwed 17 Februari 20:52:47 EET 2016 Ini adalah tes saat loopwed 17 Februari 20:52:52 EET 2016 Ini adalah tes saat loopwed 17 Feb 20:52:57 EET 2016 

Perintah di atas akan berjalan sampai dibunuh atau terganggu oleh pengguna. Itu bisa berguna jika Anda perlu menjalankan perintah yang berjalan di latar belakang dan Anda tidak ingin mengandalkan cron.

Penting: Saat menggunakan metode di atas, sangat disarankan agar Anda menetapkan interval cukup lama untuk memberikan waktu yang cukup dari perintah Anda untuk selesai berjalan, sebelum eksekusi berikutnya.

Kesimpulan

Sampel dalam tutorial ini berguna, tetapi tidak dimaksudkan untuk sepenuhnya menggantikan utilitas cron. Terserah Anda untuk menemukan mana yang bekerja lebih baik untuk Anda, tetapi jika kami harus memisahkan penggunaan kedua teknik, saya akan mengatakan ini:

  1. Gunakan cron saat Anda perlu menjalankan perintah secara berkala bahkan setelah sistem reboot.
  2. Gunakan metode yang dijelaskan dalam tutorial ini untuk program/skrip yang dimaksudkan untuk berjalan dalam sesi pengguna saat ini.

Seperti biasa jika Anda memiliki pertanyaan atau komentar, jangan ragu untuk mengirimkannya di bagian komentar di bawah ini.