Linux错误修改.bashrc导致常用命令无法使用问题及解决方案记录
问题描述:
在设置Hadoop环境变量过程中,编辑错误导致常用命令如ls等无法使用。
问题复现:
hadoop@ubuntu:~$ source ~/.bashrc
命令 'lesspipe' 可在以下位置找到
* /bin/lesspipe
* /usr/bin/lesspipe
由于/usr/bin:/bin 不在PATH 环境变量中,故无法找到该命令。
lesspipe:未找到命令
命令 'dircolors' 可在 '/usr/bin/dircolors' 处找到
由于/usr/bin 不在PATH 环境变量中,故无法找到该命令。
dircolors:未找到命令
\u547d\u4ee4 'ls' \u53ef\u5728 '/bin/ls' \u5904\u627e\u5230
\u7531\u4e8e/bin \u4e0d\u5728PATH \u73af\u5883\u53d8\u91cf\u4e2d\uff0c\u6545\u65e0\u6cd5\u627e\u5230\u8be5\u547d\u4ee4\u3002
ls\uff1a\u672a\u627e\u5230\u547d\u4ee4
hadoop@ubuntu:~$ ls
命令 'ls' 可在 '/bin/ls' 处找到
由于/bin 不在PATH 环境变量中,故无法找到该命令。
ls:未找到命令
解决思路
此时很多如创建修改删除编辑文件等常用脚本命令都已经失效,无法在终端中打开.bashrc进行编辑。此时可以临时设置环境变量,让已经失效的命令重新生效,接着再打开.bashrc正确修改即可。
解决步骤复现
export PATH="$PATH:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"
#临时设置环境变量
gedit ~/.bashrc #正确编辑.bashrc文件
source ~/.bashrc #使其生效