Jalankan Perintah Secara Otomatis Setiap 5 Menit

10

Saya sangat baru menggunakan Linux dan terutama dengan command line. Saya telah berhasil menjalankan Server Media Plex dan menjalankannya, tetapi saya harus menjalankan perintah berikut setiap 5 menit untuk menyinkronkan dengan Amazon Drive saya.

sinkronisasi acd_cli

Saya telah mencoba berbagai metode yang berbeda seperti skrip bash dan tidak dapat membuatnya berfungsi. Saya hanya perlu perintah di atas untuk berjalan setiap 5 menit dan rasanya ada cara mudah yang saya tidak tahu.

SneakierDAG
sumber

Jawaban:

7

Metode yang mudah

Anda dapat mengatur skrip bash yang mengulang selamanya menjalankan perintah itu kemudian tidur selama 5 menit.

Buka terminal dan jalankan perintah ini:

sudo nano /usr/local/bin/amazon-sync

Kemudian, ketikkan yang berikut ini:

#!/bin/sh  
while true  
do  
  acd_cli sync  
  sleep 300  
done

Tekan ctrl+ ountuk menyimpan

Tekan ctrl+ xuntuk keluar

Jalankan perintah ini:

sudo chmod +x /usr/local/bin/amazon-sync  

Ketika Anda memulai komputer Anda, tekan ctrl+ alt+ tdan ketik amazon-synckemudian minimalkan jendela terminal. Perintah akan dijalankan setiap 5 menit (300 detik).

cheesits456
sumber
Ada cara untuk membuatnya berjalan saat startup tetapi terakhir kali saya mencoba melakukan itu saya harus masuk ke pemulihan sistem untuk membatalkan apa yang saya lakukan, tapi saya tahu itu mungkin jika Anda melakukannya dengan benar.
cheesits456
Untuk membuatnya bekerja pada saat start-up, Anda memerlukan cronjob. Lihat jawaban saya di bawah ini.
Michael Sandman
13

Anda dapat gunakan

crontab -e

untuk membuat jadwal cron pengguna.

Baris yang Anda butuhkan secara spesifik adalah

*/5 * * * * /home/YOU/backup.sh

Dalam backup.shmenambahkan perintah yang ingin Anda jalankan, pastikan skrip dapat dieksekusi, yaituchmod +x backup.sh

Lihatlah

http://www.unixgeeks.org/security/newbie/unix/cron-1.html

Michael Sandman
sumber
4

Ada juga watchperintah, jika Anda perlu menampilkan output di layar dan menghapus secara otomatis.

watch -n 300 acd_cli sync
Sergiy Kolodyazhnyy
sumber
1

Ketika Anda mengatakan 5 menit, Apakah maksud Anda 5 menit atau Anda akan melupakan perintah dalam 5 menit dan membiarkannya berjalan tanpa batas?

Ada begitu banyak pilihan untuk dipilih, Tapi saya akan tunjukkan 4 cara pintar untuk Menerapkan ini.


for (( i=0; i<=20; i++)); do 'acd_cli sync' $i ;sleep 300; done

Ini mengatakan bahwa saya adalah 0, lalu 0 kurang dari 20, jadi itu akan minus 1 sampai mencapai 0. sehingga akan berjalan 20 kali. Setiap 5 menit

while true; do 'acd_cli sync'; sleep 300; done | at now +30 min

Ini mengatakan sementara benar, lakukan perintah yang diberikan setiap 5 menit, Mulai sekarang selama 30 menit, Untuk menjalankan perintah ini Anda harus Instal di dengan menjalankan apt install di --assume-ya, Tidak yakin bahwa ini akan bekerja pada satu lingkaran sekalipun

while true [ $i -lt 20 ]; do 'acd_cli sync' & i=$[$i+1];sleep 300; done

Perintah ini mengatakan, Sementara $ i tetap lebih rendah dari 20 lakukan Antarmuka Baris Perintah Amazon Cloud Drive yang Anda daftarkan, Maka saya masih ditambah satu pada setiap kemunculan perintah, Setiap 5 menit selamanya

for i in $(seq 20); do 'acd_cli sync' $i; sleep 300; done

Ini mengatakan Untuk urutan Input 20 lakukan sinkronisasi Amazon Cloud Drive, Setiap 5 menit 20 kali


sumber