1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > linux vim命令找不到 sudo vim “找不到命令”的问题

linux vim命令找不到 sudo vim “找不到命令”的问题

时间:2022-04-05 19:58:52

相关推荐

linux vim命令找不到 sudo vim “找不到命令”的问题

系统:debian8

shell:zsh

为了添加对python的支持,重新编译了vim7.4,安装到了/usr/local/vim74,而且在.zshrc里面设置了alias vim=’/usr/local/vim74/bin/vim’,在zsh里面用vim,一切正常。

但是用sudo vim的时候提示:sudo:vim:找不到命令,必须sudo /usr/local/vim74/bin/vim 这样才行,请问这是什么原因?

另外问两个相关的问题:

1、是否我用zsh就修改.zshrc就可以?不用管.bashrc?

2、alias都是在哪里定义的?.zshrc和.bashrc我都看了,只有一部分

你设置的

.zshrc

~/.zshrc

吧。这个设置只对当前用户有效。

当 Zsh 启动时,它会按照顺序依次读取下面的配置文件:

/etc/zsh/zshenv

该文件应该包含用来设置PATH 环境变量[broken link: invalid section]以及其他一些环境变量的命令;不应该包含那些可以产生输出结果或者假设终端已经附着到 tty 上的命令。

~/.zshenv

该文件和 /etc/zsh/zshenv 相似,但是它是针对每个用户而言的。一般来说是用来设置一些有用的环境变量。

/etc/zsh/zprofile

这是一个全局的配置文件,在用户登录的时候加载。一般是用来在登录的时候执行一些命令。请注意,在 Arch Linux 里该文件默认包含一行配置,用来加载 /etc/profile 文件,详见 #全局配置文件。

/etc/profile

在登录时,该文件应该被所有和伯克利(Bourne)终端相兼容的终端加载:它在登录的的时候会加载应用相关的配置(/etc/profile.d/*.sh)。注意在 Arch Linux 里,Zsh 会默认加载该文件。

~/.zprofile

该文件一般用来在登录的时候自动执行一些用户脚本。

/etc/zsh/zshrc

当 Zsh 被作为交互式终端的时候,会加载这样一个全局配置文件。

~/.zshrc

当 Zsh 被作为交互式终端的时候,会加载这样一个用户配置文件。

/etc/zsh/zlogin

在登录完毕后加载的一个全局配置文件。

~/.zlogin

和 /etc/zsh/zlogin 相似,但是它是针对每个用户而言的。

/etc/zsh/zlogout

在注销的时候被加载的一个全局配置文件。

~/.zlogout

和 /etc/zsh/zlogout 相似,但是它是针对每个用户而言的.

来自Zsh_(简体中文)

你的问题更多的是想知道如何配置alias,对此进行回答。如何配置alias:

(1)在.bashrc中添加一行:alias startvim=’sudo /usr/local/vim74/bin/vim’

(2)在终端中执行 source .bashrc 使配置生效

两步之后,你再执行startvim即可

当你执行

sudo vim

时,是在root用户的

$PATH

里查找vim

然而全局目录

/usr/bin:/usr/sbin

里 并没有vim

正确的做法是

EDITOR=/usr/local/vim74/bin/vim

export EDITOR

然后使用

sudoedit filename

进行编辑

PS:强烈反对编译时

./configure --prefix=/usr/local/vim74

这种做法

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。