Linuxcrontab下關於使用date命令和sudo命令的坑
想要在root 的crontab裡面加一些任務計劃,希望以www使用者執行命令,並且將輸出重定向到某處以當時時間命名的日誌檔案,大致如下
1
|
/usr/bin/sudo -u www /usr/local/php/bin/php /www/open/www .php &> /var/log/xxx_cron_log/www_ $( date + "%Y%m%d_%H:%M" ).log
|
此處有兩個坑:
1、習慣上的`date +”%Y%m%d_%H:%M”` 和 $(date +”%Y%m%d_%H:%M”)在crontab下不起作用,需採用如下形式 `date +”\%Y\%m\%d_\%H:\%M”` 和 $(date +”\%Y\%m\%d_\%H:\%M”)
2、直接在crontab裡以sudo執行命令無效,會提示 sudo: sorry, you must have a tty to run sudo .需要修改/etc/sudoers,執行visudo或者vim /etc/sudoers 將”Defaults requiretty”這一行註釋掉。因為sudo預設需要tty終端,而crontab裡的命令實際是以無tty形式執行的。註釋掉”Defaults requiretty”即允許以無終端方式執行sudo
聯想:想到top命令也是需要在終端下執行的,所以直接在shell指令碼里呼叫top命令式無效的
本文轉自kai404 51CTO部落格,原文連結:http://blog.51cto.com/kaifly/1627658,如需轉載請自行聯絡原作者
相關文章
- su和sudo命令
- Linux命令su、sudo、sudo su、sudo -i使用和區別Linux
- linux sudo命令使用Linux
- Linux su命令和sudo命令的區別Linux
- linux 下的date命令Linux
- 如何使用 date 命令
- sudo命令
- su和sudo命令的區別
- sudo命令使用的幾個場景
- linux sudo命令的概念與使用Linux
- linux下date命令用法Linux
- 使用 sudo 命令出現錯誤
- date命令
- DOS命令之Date命令的用法
- Linux 命令 su 和 sudo 的區別Linux
- linuxsu和sudo命令的區別Linux
- 8個Date命令使用示例
- Linux下crontab命令的用法:sudo crontab -lLinux
- sudo 命令情景分析
- linux sudo 命令Linux
- Linux伺服器上配置 sudo 及 sudo命令使用Linux伺服器
- 6個超實用的Sudo命令使用技巧
- ansible基於密碼sudo執行命令密碼
- 深度解析!Linux 命令 su 和 sudo 的區別Linux
- 關於ftp的命令FTP
- 關於solairs10的find命令使用AI
- Linux date命令Linux
- mac-date命令Mac
- date 命令詳解
- Linux - date命令Linux
- unix date命令解疑
- Git命令的使用和相關配置Git
- Linux下的date命令究竟可以幹什麼Linux
- Linux賬號空閒登出、sudo命令使用Linux
- Linux基礎命令—sudoLinux
- Linux基礎命令---sudoLinux
- Linux精講——sudo命令Linux
- 關於close函式和cp命令函式