我正在尝试将 2 个 csv 文件从一个 Pi 发送到另一个 Pi。
我有一个 shell 脚本可以执行此操作,并且在终端中执行时工作得非常好。但是当我在 crontab 中运行脚本时,它不起作用。
我在终端中输入要运行的内容:
bash fileTX.sh
这可以完美地传输到另一个 Pi!!
用于传输文件的 bash 脚本:
#!/bin/bash
password="mypassword"
username="myusername"
ip="111.11.11.11"
while :
do
sshpass -p "$password" scp /home/pi/csv1.csv $username@$ip:/home/pi/Desktop
sshpass -p "$password" scp /home/pi/csv2.csv $username@$ip:/home/pi/Desktop
echo "Files Transmitted!!"
sleep 30
done
再次,在终端中这有效!在 crontab 中它不起作用
在 crontab 中:
@reboot /home/pi/fileTX.sh &
请问有人看到问题出在哪里吗?!
我试过了 使 shell 脚本成为可执行文件,给出所有内容的完整路径,在 crontab 中尝试了一堆前缀变体,例如脚本路径之前的“sh”和“bash”以及“/bin/bash”
您可以尝试将 cron 条目更改为
@reboot /bin/bash /home/pi/fileTX.sh &
只是为了确保您使用的是 bash 来执行。