bash 环境变量

bash环境配置:

配置文件:

生效范围划分,存在两类:

  全局配置:

/etc/profile,/etc/profile.d/*.sh

/etc/bashrc

  个人配置:

~/.bash_profile

~/.bashrc

按功能划分,存在两类:

profile类:

为交互式登录的shell提供配置

/etc/profile,/etc/profile.d/*.sh

~/.bash_profile

功用:

1 定义环境变量,例如PATH,PS1

2 运行命令或脚本

bashrc类:

为非交互式登录shell提供配置

/etc/bashrc

~/.bashrc

功用:

定义命令别名

定义本地变量

变量:内存空间,变量名

类型:

环境变量 作用范围 当前shell进程及其子进程

本地变量 作用范围 当前shell进程

局部变量 作用范围 仅为当前shell进程中某代码片断(通常为函数上下文)

位置变量 $1 $2

特殊变量 $?

变量定义方式:

bash内置变量:可直接调用,内置了许多环境变量,例如:PATH等

自定义变量:

变量赋值: 变量=值

bash弱类型:

变量存储数据时,默认均采用字符形式;任何变量可以不经声明,直接引用

 定义本地变量:

name=value

查看 set

 定义环境变量

export name=value

declare -x name=value

查看 env, printenv,export

撤销变量:

unset name

引用变量:

${name}, $name

bash中的引用符号:

‘‘:强引用,变量不会被替换

"":弱引用

``:命令引用, 把一个命令的执行结果直接引用 例如:ls -l `which cat`

 shell登录类型:

  交互式登录

直接通过终端使用账号密码进行的登录;

通过su - l USERNAME 命令实现的用户切换

非交互式登录

图形界面下打开的命令行窗口;

执行脚本;

su USERNAME命令;

 配置文件作用次序

生效的变量是最后出现的变量

交互式登录:

/etc/profile ---> /etc/profile.d/*.sh ---> ~/.bash_profile --> /etc/bashrc

非交互式登录:

~/.bash --> /etc/bashrc/ --> /etc/profile.d/*.sh

编辑的配置文件定义的新配置如何生效

1 重新登陆

2 让当前shell去重新读取指定的配置文件

source /PATH/TO/SOMEFILE

. /PATH/TO/SOMEFILE

注意:副作用  读两遍后,环境变量在PATH出现两遍

问题:

  1. 定义对所有用都生效的别名?

    通过编辑/etc/bashrc文件添加别名设置,将会对所有用户生效。

  2. 如果仅需要PATH环境变量的修改仅对root用户生效,该如何操作?

    通过编辑root用户家目录下.bash_profile文件设置只对root用户生效的环境变量

如有错误,敬请指正!

谢谢!

时间: 2024-10-03 13:29:56

bash 环境变量的相关文章

vim、find 的使用bash环境变量

今天我给大家带来的是VIM,find,命令的使用和bash环境变量的一些内容. vim命令 vi命令是UNIX操作系统和类UNIX操作系统中最通用的全屏纯文本编辑器.Linux中的vi编辑器叫vim,它是vi的增强版,与vi编辑器完全兼容,而且实现了很多增强功能. vi编辑器有三种模式:输入模式,命令模式(编辑模式)和末行模式,(默认打开命令模式) 语法:   vi(选项)(参数) 参数解释: Ctrl+u:向文件首翻半屏: Ctrl+d:向文件尾翻半屏: Ctrl+f:向文件尾翻一屏: Ctr

bash环境变量读取顺序

bash环境变量读取顺序: 交互式登录的用户: /etc/profile --> /etc/profile.d/*.sh --> ~/.bash_profile --> ~/.bashrc --> /etc/bashrc 非交互式登录的用户: ~/.bash_profile --> ~/.bashrc --> /etc/bashrc --> /etc/profile.d/*.sh

bash环境变量

bash环境配置:         配置文件,生效范围划分,存在两类:         全局配置:             /etc/profile, /etc/profile.d/*.sh             /etc/bashrc         个人配置:             ~/.bash_profile             ~/.bashrc 按功能划分,存在两类:         profile类:为交互式登录的shell提供配置             /etc/pro

bash环境变量、特殊权限及磁盘管理与文件系统

bash环境配置: 配置文件,生效范围划分,存在两类: 全局配置:/etc/profile, /etc/profile.d/*.sh,/etc/bashrc 个人配置:~/.bash_profile,~/.bashrc 按功能划分,存在两类: profile类:为交互式登录的shell提供配置 /etc/profile, /etc/profile.d/*.sh ~/.bash_profile 功用: (1) 定义环境变量,例如PATH.PS1 (2) 运行命令或脚本 bashrc类:为非交互式登

find,vim,bash环境变量,文件权限

Linux中一切皆文件,所以文本文件的编辑就是运维工作的常事,熟练使用一款文本编辑器就非常重要,linux中有nano文本编辑器,现在学习更为强大的Vim文本编辑器 全屏幕的编辑器:VIM vi: visual interface sed:行编辑器 vi, vi iMproved vim: 模式化: 编辑模式:命令模式 输入模式: 末行模式: 编辑模式 --> 输入模式: i: insert, a:append, o:new line, I: 行首 A:行尾 O:上方新建行 输入模式 -->

Bash环境变量配置

配置文件,生效范围划分,存在两类: 全局配置: /etc/profile, /etc/profile.d/*.sh /etc/bashrc 个人配置: ~/.bash_profile ~/.bashrc 按功能划分,存在两类: profile类:为交互式登录的shell提供配置 /etc/profile, /etc/profile.d/*.sh ~/.bash_profile 功用: (1) 定义环境变量,例如PATH.PS1 (2) 运行命令或脚本 bashrc类:为非交互式登录shell提供

[8-30]Bash环境变量知识梳理

知识储备 Shell是交互式命令解释器,用户是不允许直接访问内核和操作的,那么Shell就是这样一个中间件,他负责对用户输入的命令做语法分析.语义分析,判断要做什么样的操作,有哪些增强功能选项,操作什么样的对象,并且通过自身提请内核启动进程,是一个用户和内核的代理人: 广义的Shell包含GUI和CLI,而狭义的Shell仅仅指的是CLI: Linux支持众多Shell实例,如tsh.zsh等等,使用最广泛的是Bash[众多Shell中的一个实例]: 请注意,shell自身是一个命令环境,那么s

新手理解的bash环境变量解析漏洞

p{ line-height:150%; font-size:18px; font-family:fangsong; margin-top:20px; } pre {font-size:15px; background-color:black; color: white;font-family: sans-serif } #refer{background-color:gray;} h1 {font-family:simhei;} 1 环境变量是什么 无论是Windows程序还是Linux程序,

20150830-Linux bash环境变量定制

待完善... bash环境配置: 配置文件,生效范围划分,存在两类: 全局配置: /etc/profile, /etc/profile.d/*.sh /etc/bashrc 个人配置: ~/.bash_profile ~/.bashrc 按功能划分,存在两类: profile类:为交互式登录的shell提供配置 /etc/profile, /etc/profile.d/*.sh ~/.bash_profile 功用: (1) 定义环境变量,例如PATH.PS1 (2) 运行命令或脚本 bashr