Tôi có một tập lệnh sao lưu mà tôi cần chạy vào một thời điểm cụ thể trong ngày vì vậy tôi đang sử dụng cron
cho nhiệm vụ này và từ bên trong cron tôi cũng đang cố gắng chuyển hướng đầu ra của tập lệnh sao lưu sang a logfile
.
crontab -e
*/1 * * * * /home/ranveer/backup.sh &>> /home/ranveer/backup.log
Trong mục cron ở trên, tôi đang chuyển hướng cả hai stderr and stdout
đến một tệp nhật ký.
Công việc cron ở trên thực thi tốt theo syslog
và nó thực hiện nhiệm vụ được đề cập trong backup.sh
tệp nhưng nó không ghi bất cứ điều gì vào tệp nhật ký.
/var/log/syslog
Oct 19 20:26:01 ranveer CRON[15214]: (ranveer) CMD (/home/ranveer/backup.sh &>> /home/ranveer/backup.log)
Khi tôi chạy tập lệnh từ cli, nó hoạt động theo yêu cầu và đầu ra được ghi vào tệp nhật ký
ranveer@ranveer:~$ ./backup.sh &>> backup.log
ranveer@ranveer:~$ cat backup.log
Fri Oct 19 20:28:01 IST 2012
successfully copied testdir
test.txt successfully copied
-------------------------------------------------------------------------------------
ranveer@ranveer:~$
Vì vậy, tại sao đầu ra của tệp không được chuyển hướng đến tệp từ bên trong cron.