我在 Fedora 33 服务器上。我已删除vi
并安装了vim-enhanced
:
dnf remove vi
dnf install vim-enhanced
vim
但是我在使用命令时收到此错误:
[root@localhost ~]# vim
No vim found, using vi, press ENTER to continue
-bash: vi: command not found
[root@localhost ~]#
我的样子如下$PATH
:
[root@localhost ~]# echo $PATH
/root/.local/bin:/root/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/var/lib/snapd/snap/bin
[root@localhost ~]#
虽然 /usr/bin 路径存在,但每次我需要执行命令$PATH
时都必须明确写入路径:vim
[root@localhost ~]# /usr/bin/vim
请帮我了解发生了什么事。
答案1
在Fedora 33 Server中, command默认vim
是的别名,当我们运行command时可以看到它:vi
which vim
[root@localhost ~]# which vim
alias vim='read -rep $'\''No vim found, using vi, press ENTER to continue\n'\'' -n1 -t 20 -s && vi'
/usr/bin/read
[root@localhost ~]#
或者直接执行alias
命令:
[root@localhost ~]# alias
alias cp='cp -i'
alias egrep='egrep --color=auto'
alias fgrep='fgrep --color=auto'
alias grep='grep --color=auto'
alias l.='ls -d .* --color=auto'
alias ll='ls -l --color=auto'
alias ls='ls --color=auto'
alias mv='mv -i'
alias rm='rm -i'
alias vim='read -rep $'\''No vim found, using vi, press ENTER to continue\n'\'' -n1 -t 20 -s && vi'
alias which='(alias; declare -f) | /usr/bin/which --tty-only --read-alias --read-functions --show-tilde --show-dot'
alias xzegrep='xzegrep --color=auto'
alias xzfgrep='xzfgrep --color=auto'
alias xzgrep='xzgrep --color=auto'
alias zegrep='zegrep --color=auto'
alias zfgrep='zfgrep --color=auto'
alias zgrep='zgrep --color=auto'
[root@localhost ~]#
解决问题的方法是,我们只需要vim
像这样取消斜线:
[root@localhost ~]# unalias vim
[root@localhost ~]#
此后该vim
命令将照常工作。