我试图按照this question将mvim shell脚本添加到/ usr / local / bin格式bash,一切似乎都有效;但是,每当我尝试执行脚本时,我仍然会收到“命令未找到”。
从我的mvim文件所在的目录(下载)中,我输入了:
sudo cp -v mvim /usr/local/bin
我得到了输出:
mvim -> /usr/local/bin
然后,无论我键入mvim
还是mvim -v
我之前从未向我的$ PATH添加过一些内容,但即使在查看了有关如何完成的一些教程之后,我似乎无法让mvim
作为终端命令工作。< / p>
修改
echo $PATH
/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin
和
ls -l mvim
-rwxr-xr-x ...
和
ls -l /usr/local/bin
-rwxr-xr-x ...
答案 0 :(得分:7)
如果您运行sudo cp -v mvim /usr/local/bin
并且/usr/local/bin
文件夹不存在,则cp会将mvim
复制到/usr/local/
文件夹并将其命名为bin
。
您需要先使用sudo mkdir -p /usr/local/bin
创建文件夹。然后,您可以使用之前的mvim
命令复制cp
。
您是否确定/usr/local/bin/mvim
设置了可执行文件标志?请尝试ls -l /usr/local/bin/mvim
,如果结果以-rw-r--r--
开头,则 mvim 不可执行。
然后您需要运行sudo chmod +x /usr/local/bin/mvim
。如果您现在再次运行上一个ls
命令,则结果应以-rwxr-xr-x
开头。 x
表示该文件现在由其所有者,其组成员以及所有其他用户可执行。
您确定/usr/local/bin
是PATH
变量的一部分吗?
尝试echo $PATH
,如果输出不包含/usr/local/bin
,那么shell将不会在那里查找命令。然后,您需要运行export PATH=$PATH:/usr/local/bin
答案 1 :(得分:1)
检查:
echo $PATH
)答案 2 :(得分:1)
启动新shell,或键入:
hash -r
以便shell重新检查$PATH
中的目录。 (它缓存内容以提高效率,当您向路径中的目录添加内容时,需要重新加载该缓存。)
答案 3 :(得分:0)
这是您发布的内容:
mvim -> /usr/local/bin
我相信错误。 看起来就像“mvim”是指向目录 / usr / local / bin的符号链接。
如果是这样,那么不是你想要的东西!
请执行以下操作:
打开终端(命令行)窗口。
“cd”到原始“mvim”目录(您尝试复制到/ usr / localbin的目录)
剪切/粘贴:
a)目录名
b)ls -l mvim
c)echo $PATH
“echo $ PATH”也很重要。
请将所有三个剪切/粘贴到您的回复中。
提前谢谢。