为什么我的cron输出文件名结尾有一个\r?
在我的cron spool中,我正在做:为什么我的cron输出文件名结尾有一个\r?,cron,Cron,在我的cron spool中,我正在做: 5****php test.php>>test.txt 我可以看到cron正在运行PHP脚本,但输出文件名为: “test.txt\r” 为什么? 如何打开该文件以查看其中的内容,或者如何使cron不附加该文件?我相信您一定在Windows计算机上编辑了crontab Linux用\n终止其行。Windows使用\r\n执行此操作。在Linux上,\r只是另一个字符。因此,您的crontab可能会显示: 5 * * * * php test.php &g
5****php test.php>>test.txt
我可以看到cron正在运行PHP脚本,但输出文件名为:
“test.txt\r”
为什么?
如何打开该文件以查看其中的内容,或者如何使cron不附加该文件?我相信您一定在Windows计算机上编辑了crontab Linux用
\n
终止其行。Windows使用\r\n
执行此操作。在Linux上,\r
只是另一个字符。因此,您的crontab可能会显示:
5 * * * * php test.php >> test.txt\r
如果您在Linux上使用显示控制字符的编辑器打开它,它将向您显示。尝试在cron文件上运行命令
dos2unix
。假设您使用的是Debian/Ubuntu操作系统:
sudo dos2unix /etc/cron.d/your_cronfile_name
如果文件是在Windows环境中创建或编辑的,则会发生这种情况。因为它有一个尾随的\r
字符,通常由窗口的文本编辑器追加。正如Amadan所提到的,这个\r
字符被附加到test.txt
字符串的末尾