首页 > 系统相关 >linux-shell与环境变量配置

linux-shell与环境变量配置

时间:2022-10-15 13:56:46浏览次数:64  
标签:shell 配置 linux PATH 环境变量 bash

之前的时候一直用win,环境变量的配置直接图形化,简单易上手,几乎0难度。虽然偶尔用linux也会去配置环境变量,但不懂那些命令是干什么的,每次都是网上搜,然后直接复制命令。直到最近,我开始用mac os,配置环境变量的时候出了各种问题,也不得不投入一些时间去学习,也发现了linux确实有意思,值得我们投入时间去学(看过1/3鸟哥linux,没坚持下去),现在记录一下

shell

shell是什么,直接翻译就是壳子,对应的就是core,core用来实现os核心功能,控制硬件,像大机器里的齿轮,电机。shell就像一个机器壳子,上面有按钮,通过它你可以控制整台机器。

环境变量

在win中,我们打开一个软件的时候,都是直接点了桌面上的快捷方式,然后就启动了软件。但我相信有些人会有经历,我们下载了软件的压缩包解压使用,这个时候桌面就没有快捷方式,只能从安装目录中去找exe
上面这个过程就相当于shell中的全路径使用某个命令,和直接使用使用命令
全路径一定是可以用,直接使用某个命令是基于你给他配置了环境变量

怎么配置环境变量

配置环境变量其实有很多种,linux多用户系统,有全局的配置和用户的配置
咱们使用linux不推荐用root,工作多数时间也没有权利使用root,我们就配置用户的环境变量就完全够用。

一般我们常用的环境变量配置方式,在家目录下编辑一个文件 .bash_profile
这是bash的一个配置文件,bash在启动的时候会执行里面的内容,所以我们将环境变量写在了其中,然后source .bash_profile使其生效,然后在当前shell环境中就可以使用这些环境变量配置了
配置的大致格式为

export NAME=/users/abc/d/e
export PATH=$PATH:$NAME:xxx:xxx

稍微解释一下这都是干什么了
export是linux的命令,可以用于指定环境变量
NAME是环境变量的名字,就是你需要的环境名字,不同情况这个要写的不同,你也可乱写,就是一个目录别名(但强烈不建议)用行业约定或意义化的词就可以
重点在最后一行这里
我们export一个新的PATH,只在当前shell有效,这个PATH的内容是$PATH:$NAME:xxx:xxx
$这个符号在linux中的用途很多,此处是用来取变量的值,
我们将系统的PATH取出了并且加上 :$NAME:xxx:xxx
PATH的内容是一堆目录,是用来分割区别多个目录的,到这里你基本就能看出来了,就是新建了一个临时PATH在系统PATH追加了我们的配置

bash是gun的项目,shell软件的一种,linux中默认是这个

mac用户在配置用上述操作的时候会发现一个问题
当开一个新的终端的时候,环境变量失效了,这个主要原因可能是你配置的bash_profile,这个是bash的配置,但是mac终端默认可能是zsh,zsh启动不会读bash_profile,它会读.zshrc,解决方法也挺清晰的
1.把环境变量写到.zshrc
2.修改终端使用bash
3.依旧配置bash_profile在.zshrc中,写入source ~/.bash_profile

标签:shell,配置,linux,PATH,环境变量,bash
From: https://www.cnblogs.com/beifangcc/p/16794031.html

相关文章

  • 《Unix/Linux系统编程》第七周学习笔记
    《Unix/Linux系统编程》第七周学习笔记并发进程线程管理函数pthread_create()intpthread_create(pthread_t*pthread_id,pthread_attr_t*attr,void*(*func)(void......
  • Linux的/etc/services文件的作用?
    /etc/services文件保存了服务和端口的对应关系。/etc/services作用/etc/services文件保存了服务和端口的对应关系。但是通常服务的配置文件里会自行定义端口。那么两者......
  • 群晖DSM开启ROOT权限及XShell使用ROOT登录教程
    群晖DSM开启ROOT权限及WinSCP使用ROOT登录教程群晖DSM6.0以后就封锁了ROOT权限登录,导致无法使用WinSCP使用root登录修改文件(使用admin账号是没有权限的)。本文以群晖DSM7.......
  • net中c#教程 如何获取系统的环境变量?
    任何应用程序,都不是独立存在的,需要与外界交互。比如与使用者交互,收集各种数据;与数据库交互,读写业务逻辑;与操作系统交互,获取各种系统变量。今天分享的,就是如何读取操作系统......
  • Linux文件系统与日志分析详解
    一、inode(索引节点/i节点)与block(块)1.inode与block的概念1.1什么是block?文件储存在硬盘上的,硬盘最小的存储单位叫“扇区”,每个扇区存储512个字节一般连续8个扇区会组......
  • linux之用户 | 15
    用户&用户组创建用户:useradduser1删除用户:userdel-ruser1删除一个用户('-r'排除主目录)修改用户密码:passwduser1修改一个用户的口令(只允许root执行)创建一个新用......
  • linux查看操作系统版本信息
    一、linux下如何查看已安装的centos版本信息:1.Linux查看当前操作系统版本信息 cat/proc/versionLinuxversion2.6.32-696.el6.x86_64([email protected]......
  • Linux 系统安全及应用(账号安全和引导登录控制)
    一、账号安全控制1.1系统账号清理将非登录用户的shell设置为/sbin/nologin   锁定长期不使用的账号   删除无用的账号   锁定帐号文件passwd和sh......
  • Linux 性能1-perf
    参考:一文看得Linux性能分析|perf原理:https://mp.weixin.qq.com/s/Vj418ZwVe6PxE1erDu8bkg一文看懂Linux性能分析|perf实现:https://mp.weixin.qq.com/s/6kTe0eO1AmPPHb......
  • Unix/Linux系统编程学习笔记-7
    笔记第四章并发编程并行计算导论并行计算是一种计算方法,通过使用多个执行并行算法的处理器相较串行计算更快地解决问题。顺序算法与并行算法顺序算法begin step_......