当我进入dd-wrt路由器并发出命令时,我有以下脚本运行良好
/opt/bin/curl --url "smtps://smtp.gmail.com:465" --ssl-reqd --mail-from "username@gmail.com" --mail-rcpt "username@gmail.com" --upload-file /mnt/mail.txt --user "username@gmail.com:password" --insecure
但是当我通过GUI发出相同的命令时;管理/命令然后相同的脚本不起作用。
任何有效的解决方案都会给你很大的帮助,谢谢
答案 0 :(得分:2)
登录计算机并键入命令:
which sh
将此值作为第一行,在其前面加上#!字符,如
#!/bin/sh
你的shell版本是什么?通过ssh连接到路由器后仔细查看第一行。它类似于:
BusyBox v1.15.3 (2011-11-24 00:44:20 CET) built-in shell (ash)
Enter 'help' for a list of built-in commands.
您可能需要记录命令的输出以进行调试:
#!/bin/sh
/opt/bin/curl --url "smtps://smtp.gmail.com:465" --ssl-reqd --mail-from "username@gmail.com" --mail-rcpt "username@gmail.com" --upload-file /mnt/mail.txt --user "username@gmail.com:password" --insecure 2>&1 | logger -t $0
它将使用syslog工具记录输出。如果它发生了您没有安装syslog,您可以将输出记录到文件:
#!/bin/sh
/opt/bin/curl --url "smtps://smtp.gmail.com:465" --ssl-reqd --mail-from "username@gmail.com" --mail-rcpt "username@gmail.com" --upload-file /mnt/mail.txt --user "username@gmail.com:password" --insecure >> /tmp/mylogfile 2>&1
此外,请确保脚本具有可执行属性集:
chmod a+rx /path/to/your/script