博主之前有过这种情况,就是在普通用户下su ls等命令还有效,可登陆进root用户之后这些常用的命令竟然失效了。



像这样

这问题其实很简单,但是对于不清楚环境变量的配置的同学来说也的确棘手,我之前就是因为环境变量还不熟悉才不小心误删了root根目录下配置文件内的PATH变量,或者在某个配置文件中将PATH初始化错误才造成的这些命令失效的问题。

环境变量通常设置在以下几个目录:~/.bashrc;~/ .bash_profile,;~/.profile; /etc/profile;etc/bash.bashrc。

而这几个文件的读取顺序也不一样,首先我们正常登录时读取的顺序是1./etc/profile2.~/.bash_profile ~/.bash_login ~/.profile(一般是哪个存在读取哪个)

而至于~/.bashrc文件,则是在non login shell 启动时执行,是指每次在GUI打开终端都会读取该文件。(博主就是在这个文件中设置了PATH变量,并且设置错了,才造成上面的情况)

解决该问题也很容易,因为vi,vim等命令的失效,所以我们只能使用export (export不是文件export是 bash的一个内部命令, 由 /bin/bash 来解释执行)

export PATH=/bin:/usr/bin:$PATH

这段命令会可以使ls su等常用命令暂时生效,那么要永久解决该问题,就需要到上述的几个文件中去一一排查时候错误设置了PATH变量,或者根本就没有初始化PATH变量。

该问题就可以解决。

永久修改

那么如果要新添加环境变量的话就可以直接在PATH变量后面添加你需要添加的路径即可。(不同的用户,需要到用户家目录下面去修改隐藏文件bash_profile)

具体命令如下:

cd 用户家目录
vim .bash_profile

然后修改PATH变量即可,这里修改文件属于永久修改,因为该配置文件是在系统启动时才会读取并且export在全局生效,所以需要,重启文件即可生效。

临时修改

//:路径之间是以冒号分割的
export PATH=XXXXXXXX:需要添加的路径

就可生效。

添加sublime到环境变量

假如:当前登录用户为root,sublime安装在/opt目录下

方法一:
//进入根目录
cd ~
vim .bash_profile //进入vim编辑文件,修改PATH
PATH=/bin:/usr/bin:/opt/sublime_text:$PATH
//进入底行模式,输入wq回车保存修改
//重启系统

这里要注意,添加目录环境变量的话,需要在命令行输入完整文件名才可以快速启动sublime。

方法二:

添加一个软连接到已属于环境变量的目录。如/usr/bin目录

ln -s /opt/sublime_text/sublime_text /usr/bin/subl

通过创建软链接的方法还可以自定义命令的名称,以上两种方法都可以配置快速启动sublime

配置完成就可以在终端使用命令通过sublime启动文件来编程了~





这样对于不习惯使用神奇vim的同学来说,会方便不少。

Linux添加目录到环境变量以及添加sublime到环境变量的更多相关文章

  1. Linux添加目录到环境变量以及添加Sublime Text到环境变量

    本文主要介绍了Linux添加目录到环境变量以及添加Sublime Text到环境变量,通过具体的解释说明,让我们从中学到Linux添加目录到环境变量以及添加Sublime Text到环境变量的精髓所在 ...

  2. Linux环境变量的添加设置

    以前一直都记着的,后来做的事情多了就什么都忘的差不多了. 在Linux中,环境变量一般添加有这么几个地方: 1./etc/profile 这个目录设置的变量为整个系统的全局变量,所有的用户通用,一般不 ...

  3. 右键计算机->属性->高级系统设置->高级->环境变量,添加环境变量(推荐)

    (1)右键计算机->属性->高级系统设置->高级->环境变量,添加环境变量(推荐) QTDIR:D:\Software\Qt\Qt5.2.0\5.2.0\msvc2010_op ...

  4. Unix/Linux环境C编程入门教程(32) 环境变量那些事儿

    1. getenv() putenv()setenv()函数介绍 getenv(取得环境变量内容) 相关函数 putenv,setenv,unsetenv 表头文件 #include<stdli ...

  5. Linux环境下安装JDK并配置环境变量

    首先查看是否已经安装了JDK并配置环境变量. [root@dhcc_plat opt]# java -version -bash: java: command not found [root@dhcc ...

  6. Linux中shell基础、重定向、管道符、环境变量

    1.什么是shell Shell是系统的用户界面,提供了用户与内核进行交互操作的一种接口(命令解释器).它接收用户输入的命令并把它送入内核去执行.起着协调用户与系统的一致性和在用户与系统之间进行交互的 ...

  7. 如何修改Linux系统下的PATH(如何添加自己的路径到PATH)

    修改Linux的PATH方法有三(添加用户的路径到PATH): 方法一: 直接在命令行中输入:#PATH=$PATH:/etc/apache/bin.这种方法只对当前会话有效,也就是说每当登出或注销系 ...

  8. linux route命令的使用详解 添加永久静态路由 tracert traceroute

    linux route命令的使用详解 添加永久静态路由  tracert  traceroute route -n    Linuxroute  print  Windows traceroute  ...

  9. LINUX中查看、添加、删除PATH以及永久添加PATH

    1.查看PATH变量 echo $PATH 会出现: 路径1:路径2:路径3 2.添加PATH变量 export PATH=$PATH:新添加的路径 用此方法添加的PATH,在关闭或者重启LINUX后 ...

随机推荐

  1. (二 -2) 天猫精灵接入Home Assistant-自动发现Mqtt设备

    参考中文教程:  https://www.hachina.io/docs/7230.html 英文官网 两个温度传感器:https://www.home-assistant.io/docs/mqtt/ ...

  2. geth中UTC文件与私钥的关系

    在创建了自己的本地区块链后,我们会得到一个文件夹keystore,该文件夹是用来存储你在这个区块链中创建的账户的备份钥匙文件,比如在这里我有一个账户的备份钥匙文件为:UTC--2018-07-12T0 ...

  3. oracle备份信息查询

    SELECT TRIM(START_TIME || '#'),       TRIM(END_TIME || '#'),       TRIM(CASE OUTPUT_DEVICE_TYPE      ...

  4. Linux安装consul

    1.下载并解压consul # cd /opt/ # mkdir consul # chmod 777 consul #cd consul #wget https://releases.hashico ...

  5. ubuntu系统的谷歌浏览器的安装

    Ubuntu 系统通过一下四步能安装谷歌浏览器 1. sudo wget http://www.linuxidc.com/files/repo/google-chrome.list -P /etc/a ...

  6. 7-(基础入门篇)关于STM32底层程序使用说明

    https://www.cnblogs.com/yangfengwu/p/9357695.html 基础教程源码链接请在淘宝介绍中下载,由于链接很容易失效,如果失效请联系卖家,谢谢 https://i ...

  7. BZOJ1816 CQOI2010 扑克牌 贪心

    题目传送门:https://www.lydsy.com/JudgeOnline/problem.php?id=1816 题意:有$N$堆牌,第$i$堆牌有$c_i$张牌,还有$M$张$joker$,每 ...

  8. 小程序学习-理解小程序中响应式单位rpx

    微信小程序的官方文档用rpx来做响应式布局单位!那什么是rpx,应该如何设置呢?今天我们就来好好了解一下. [像素]:它不是自然界的物理长度,指基本原色素及其灰度的基本编码. [物理像素]:它是显示器 ...

  9. Vue与Element走过的坑。。。。带上Axios

    1.Axios中post传参数组(java后端接收数组) 虽然源数据本身就是数组,但是传参时会自动变成key:数值或者服务器无法接收的对象,如下 如果不仔细看,很容易认为这两种情况没毛病..(后端不背 ...

  10. NoSql的三大基石:CAP理论&BASE&最终一致性

    关系型数据库的局限 NoSql出现在关系型数据库之后,主要是为了解决关系型数据库的短板,我们先来看看随着软件行业的发展,关系型数据库面临了哪些挑战: 1.高并发 一个最典型的就是电商网站,例如双11, ...