借用了 V 友的一个 hexo 脚本,快速 cl g d 的。 但是只有将命令在 terminal 运行的时候才正常,无论是 bash 还是 zsh 运行,在 debug 里都报错
/bin/bash: line 3: hexo: command not found
试试看 where 吧?
/bin/bash: line 3: where: command not found
囧 where 都找不到。。 但这两条命令在 terminal 里运行都是正常的。 求问怎么了。。
hexodir=(${HOME}/Dropbox/hexo)
cd ${hexodir}
hexo clean
hexodir=(${HOME}/Dropbox/hexo)
cd ${hexodir}
hexo generate
hexodir=(${HOME}/Dropbox/hexo)
cd ${hexodir}
hexo deploy
就如上三个脚本
1
lumen 2016-08-18 14:25:15 +08:00
大概是 PATH 变量里的路径没有包含命令所在路径
|
2
UnisandK 2016-08-18 14:28:10 +08:00
LS+1 ,要不直接写绝对路径
|
3
arphone 2016-08-18 14:59:21 +08:00
既然已经 cd ${hexodir} 了,应该 ./hexo xxxx 就可以了
|
4
mystryl OP @arphone [2016-08-18 15:03:07][ERROR: action.script] /bin/bash: line 2: ./hexo: No such file or directory
感觉这不对啊。。 |
5
mystryl OP |
7
arphone 2016-08-18 16:00:23 +08:00
@mystryl sorry,看错了,应该是 cd 到 hexo 所在目录,然后 ./hexo ;或者就是把 hexo 可执行文件路径加到 path 环境变量里去
|
8
mystryl OP 感谢 @Orz_C terminal 里面 echo $PATH ,然后在你的脚本第一行加上 PATH=刚才的输出
成功了。 |
9
zhanglintc 2016-08-19 12:12:59 +08:00
你在 terminal 里能用, 那是 PATH 里有比如 hexo 这个二进制文件的路径. 但是你在使用 alfred 的时候并没有这个路径. 所以你要写绝对地址.
我认为是这样的. |