Alfred 中用/bin/bash/运行脚本 command not found

2016-08-18 10:39:18 +08:00
 mystryl

借用了 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

就如上三个脚本

4882 次点击
所在节点    问与答
10 条回复
lumen
2016-08-18 14:25:15 +08:00
大概是 PATH 变量里的路径没有包含命令所在路径
UnisandK
2016-08-18 14:28:10 +08:00
LS+1 ,要不直接写绝对路径
arphone
2016-08-18 14:59:21 +08:00
既然已经 cd ${hexodir} 了,应该 ./hexo xxxx 就可以了
mystryl
2016-08-18 15:03:23 +08:00
@arphone [2016-08-18 15:03:07][ERROR: action.script] /bin/bash: line 2: ./hexo: No such file or directory

感觉这不对啊。。
mystryl
2016-08-18 15:30:36 +08:00
@lumen 请问如何添加?捣鼓了一个 echo 'export PATH="/usr/local/bin:$PATH"' >> ~/.bash_profile 好像无效


@UnisandK 直接调用 /usr/local/bin/hexo ?
'''
hexodir=(${HOME}/Dropbox/hexo)
cd ${hexodir}
/usr/local/bin/hexo clean
'''
[2016-08-18 15:29:56][ERROR: action.script] env: node: No such file or directory
UnisandK
2016-08-18 15:36:57 +08:00
@mystryl 还要其他环境变量那没法了。。你加个 source ~/.bash_profile 试试
arphone
2016-08-18 16:00:23 +08:00
@mystryl sorry,看错了,应该是 cd 到 hexo 所在目录,然后 ./hexo ;或者就是把 hexo 可执行文件路径加到 path 环境变量里去
mystryl
2016-08-19 08:51:52 +08:00
感谢 ‪@Orz_C ‬ terminal 里面 echo $PATH ,然后在你的脚本第一行加上 PATH=刚才的输出
成功了。
zhanglintc
2016-08-19 12:12:59 +08:00
你在 terminal 里能用, 那是 PATH 里有比如 hexo 这个二进制文件的路径. 但是你在使用 alfred 的时候并没有这个路径. 所以你要写绝对地址.

我认为是这样的.
lkai
2020-06-22 18:23:24 +08:00
@mystryl 加了好像不行呢~

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/300089

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX