注意,我在网上看到了几种有关如何更改PATH
变量的解决方案,但这不是我要的。
我想做的不是硬编码一个新PATH
变量,而是撤消对它所做的安装更改。
出现此问题是因为我反复尝试安装相同的软件,因此我的PATH
变量包含重复和冗余的目录。
我希望不对新PATH
变量进行硬编码,因为恐怕将来如果我想安装软件并将其自动附加到PATH
,则硬编码PATH
会覆盖所有此类更改。
这是PATH
我输入时的当前样子echo $PATH
:
/home/douglaswja/.rvm/gems/ruby-2.6.3/bin:/home/douglaswja/.rvm/gems/ruby-2.6.3@global/bin:/home/douglaswja/.rvm/rubies/ruby-2.6.3/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/home/douglaswja/.rvm/bin
(重复是ruby-2.6.3
,ruby-2.6.3@global
,ruby-2.6.3/bin
)
这是我的PATH
样子~/etc/environment
:
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games".
PATH
可以在许多文件中设置该变量,也可以在用户创建的自定义文件中设置该变量。我将列出我可以找到或想到的内容,并为您描述为什么使用该特定文件。
要调查您的系统PATH
的位置,请检查以下位置。
/etc/bashrc
包含系统默认值和bash shell使用的别名。.bashrc
为交互式非登录外壳程序执行。
/home/user/.bashrc OR ~/.bashrc
.bashrc
是一个Shell脚本,只要它以交互方式启动,Bash就会运行。它初始化一个交互式外壳程序会话。您可以将任何命令放在该文件中,您可以在命令提示符下键入该命令。
~/.bash_login
壳验看~/.bash_profile
,~/.bash_login
和~/.profile
以该顺序,并且读取和执行命令,从存在并且可读的第一个。
/etc/profile
该/etc/profile
文件差别不大,但是它用于在用户外壳程序上设置系统范围的环境变量。
~/.bash_profile
对登录shell执行。bash_profile
当您要设置为系统的单个用户定制的PATH变量时,此命令是合适的。
/etc/environment
/etc/environment
是系统范围的配置文件,表示所有用户都在使用它。它是归谁所有的root
,因此您需要成为管理员用户并用于对其sudo
进行修改。
/etc/profile.d
您的Linux系统将在此目录中执行所有以.sh结尾的脚本文件。
~/.zprofile
和
~/.zshrc OR ~/.zshenv
Zsh
是一个功能强大的外壳程序,既可以充当交互式外壳程序,也可以充当脚本语言解释器。尽管与兼容Bourne shell
(默认情况下,仅在发出仿真sh时才默认),但它提供了诸如改进的制表符完成和globbing之类的优点。
~/.kshrc OR ~/.kprofile
在Korn shell
使用两个启动文件中,.profile
和.kshrc
。在.profile
被读取一次,由您的登录ksh
,同时,.kshrc
由每一个新的阅读ksh
。
这些就是我可以找到的,如果它们中PATH
设置了变量,请检查一下以确认是否有您所拥有的债务。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句