環境說明
Linux版本:centos7.3
Freefilesync版本:11.5
上一篇主要說明centos上安裝Freefilesync(https://www.cnblogs.com/pinpin/p/14312944.html),我這里忽略了同步設置,大家根據需要設置同步了,這里就略過了,主要我來強調下,生成批量腳本作業,記住了,這邊建議將精度對話框和忽略錯誤都勾選上。
腳本生成好后,我們當然希望是通過centos自動讓文件同步了,所以我們需要先寫一個sh腳本文件,並將腳本文件通過crontab定時執行
1、test.sh文件內容(僅供參考)
test.sh是編寫的centos可執行腳本,腳本內容如下:
#!/bin/sh sersync="/home/FreeFileSync/FreeFileSync" #FreeFileSync可執行程序位置 confxml="/home/test1/BatchRun1.ffs_batch" #FreeFileSync生成的批處理作業腳本位置 status=$(ps aux |grep 'FreeFileSync'|grep -v 'grep'|wc -l) if [[$status=0] || [$status=1] || [$status=2] || [$status=3]]; then exit 0 else $sersync $confxml Fi
注意:status的0|1|2|3狀態,分別對應FreeFileSync返回的四種狀態
0-同步成功完成
1-同步完成並顯示警告
2-同步完成並出現錯誤
3-同步已中止
2、centos中設置定時
我們直接在系統中進行定義,命令:gedit /etc/crontab
添加腳本:
*/1 * * * * root DISPLAY=:0 /home/test.sh > /dev/123.log 2>&1
說明:
“*/1 * * * * ”:每分鍾執行一次
“root”:以root用戶執行腳本
“DISPLAY=:0”:這句必須添加,原因腳本中需要調用FreeFileSync的圖形界面,這個圖形界面centos直接運行不了,如不添加執行不了,並且報錯:Error: Unable to initialize GTK+, is DISPLAY set properly?
“/home/test.sh”:可執行腳本的絕對位置,注意,這邊位置必須添加絕對位置
“/dev/123.log 2>&1”:將標准錯誤輸出到/dev/123.log中