0 场景
公司给了几台服务器准备让我搭一个cdh 开发环境,其中一台 jdk都没装. 在配置java的环境变量的时候,我配置/etc/profile文件如下
…
JAVA_HOME=xxxxx
PATH=$JAVA_HOME/bin
export JAVA_HOME
export PATH
source完之后突然Linux常用命令失效!
回想才记起来,PATH只写了java路径没有把自身加上导致找不到命令!
1.解决
查询得知可能是更改了环境变量.
在命令行直接输入,目的是手动导入环境变量,以及shell常见的命令的存放地址
export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
之后vim /etc/profile ,补完PATH
PATH=$JAVA_HOME/bin:$PATH
编辑完vim里发现忘记sudo了,直接 :w !sudo tee % ,保存
命令:w !{cmd},让 vim 执行一个外部命令{cmd},然后把当前缓冲区的内容从 stdin 传入。
tee 是一个把 stdin 保存到文件的小工具。
%是vim当中一个只读寄存器的名字,总保存着当前编辑文件的文件路径。
所以执行这个命令,就相当于从vim外部修改了当前编辑的文件。
再次source 即恢复正常
2. 总结
待补完