![我正在尝试通过 cronjob 执行 sh 脚本,但不知何故它不起作用,没有显示日志,至少没有显示错误](https://linux22.com/image/186741/%E6%88%91%E6%AD%A3%E5%9C%A8%E5%B0%9D%E8%AF%95%E9%80%9A%E8%BF%87%20cronjob%20%E6%89%A7%E8%A1%8C%20sh%20%E8%84%9A%E6%9C%AC%EF%BC%8C%E4%BD%86%E4%B8%8D%E7%9F%A5%E4%BD%95%E6%95%85%E5%AE%83%E4%B8%8D%E8%B5%B7%E4%BD%9C%E7%94%A8%EF%BC%8C%E6%B2%A1%E6%9C%89%E6%98%BE%E7%A4%BA%E6%97%A5%E5%BF%97%EF%BC%8C%E8%87%B3%E5%B0%91%E6%B2%A1%E6%9C%89%E6%98%BE%E7%A4%BA%E9%94%99%E8%AF%AF.png)
您好,我正在尝试sh
通过 cronjob 执行脚本。我的脚本:
#!/bin/bash
#!/usr/bin/expect -f
IP=$(hostname -I | awk '{print $2}')
echo $IP
echo "Verbindung zum Server aufbauen"
所以我想做的是,我需要 Raspberry Pi 的 IP 并通过 启动服务器ssh
。当我通过终端执行脚本时,它工作正常。
答案1
使用双 shebang 可能不起作用 ( #!/bin/bash #!/usr/bin/expect -f
)
您需要为 cronjobs 设置 PATH 变量(请参阅cron 的 PATH 设置在哪里?)
这应该有效
#!/bin/bash
PATH=/usr/bin:/bin
hostname -I | awk '{print $2}'
echo "Verbindung zum Server aufbauen"