使用crontab执行bash脚本。对于每次运行,以下错误都以电子邮件形式发送:
/opt/Informatica/pcdev/scripts/startworkflow_trg.sh: line 1: #!/bin/bash: No such file or directory
crontab中的内容如下:
# Check queue and start corresponding processes in test
* * * * * (. ~/.bash_profile; $HOME/scripts/startworkflow_trg.sh tst)
该脚本可以正常工作,但错误电子邮件正在收件箱中堆积。如何解决这个错误?
答案 0 :(得分:1)
要在脚本中找到发生错误的行,请注释掉脚本的不同部分。即使只剩下第一行,也会出现问题,其中包含:
#!/bin/bash
通过创建一个新脚本并手动编写上面的第一行并粘贴旧脚本的剩余内容来解决问题。我们认为脚本的第一行中有一些字符在我们的编辑器中不可见。
答案 1 :(得分:0)
在执行crontab -e
时,在Windows和Linux之间复制和粘贴行时会出现此问题。
Windows LF
char x'0d'
被插入并导致问题。解决方案是删除所有行并重新输入。您可以通过执行crontab -l | od -x
并查找0d
字符来发现问题。