Linux
將 cron 作業從一個域複製到同一伺服器上的另一個域
我剛剛設置了以前在同一台伺服器
.com
上執行的域.co.uk
,我已經複製了所有文件,使用 bash 執行它們以更改它被引用的任何域,對於 DB 也是如此,一切都很好,與重定向。但現在我想使用 bash 移動 cron 作業。我剛在想
sudo cat /var/spool/cron/sbadmin | while read -r line; do echo $line;done > /var/spool/cron/sbcomadmin
但是新文件的權限被拒絕。當我處於 sudo 模式時,如何拒絕權限?
域也需要在新的 cron 文件中更改,但我想我可以在複製期間或之後使用 sed 。
首先,您使用的循環是無用的。你的命令可以寫成:
$ sudo cat /var/spool/cron/sbadmin > /var/spool/cron/sbcomadmin
這行不通。您需要使用以下命令以 root 身份創建文件:
$ cat /var/spool/cron/sbadmin | sudo tee /var/spool/cron/sbcomadmin
tee
會將輸出寫入標準輸出和提供的文件。如果您不想寫入標準輸出,可以> /dev/null
在上一個命令的末尾追加。tee -a
此外,如果需要替換,您可以使用附加模式工作>>
。