我的脚本首先获取API文件,从文件中执行一些命令。当从命令行执行脚本时,我得到每个命令的“command not found”错误。这是脚本:
#!/bin/bash
## include API file
source /cygdrive/c/path/to/unifi_sh_api
## login
unifi_login
## authorize a client for 30 minutes, limit down/up speed to 2048/1024kbps, quota is 500MB
unifi_authorize_guest "x2:ff:ff:ff:ff:ff" 30 up=1024 down=2048 bytes=500
unifi_logout
这将返回3个unifi_ *命令的“command not found”。没有其他错误。
这是在Windows服务器上,你可以看到我正在使用Cygwin,所以也许这是问题的一部分?
以下是我的源文件的样子,以防出现问题:https://dl.ubnt.com/unifi/4.7.6/unifi_sh_api
有什么建议吗?
更新
绝对使用bash。
我在此处发布问题之前尝试.
而不是source
。
这是我在cmd.exe窗口中运行的命令:
> C:\cygwin\bin\bash.exe -c '/cygdrive/c/path/to/myscript.sh'