在从事linux自动化运维的过程中需要对linux有一定的掌握,包括环境变量的含义、环境变量的解释了解
变量:
1.环境变量
环境变量是一个具有特定名字的对象,它包含了一个或者多个应用程序所将使用到的信息。例如path,当要求系统运行一个程序而没有告诉它程序所在的完整路径时,系统除了在当前目录下面寻找此程序外,还应到path中指定的路径去找。用户通过设置环境变量,来更好的运行进程
环境变量:系统在启动过程中预先指定好的一系列的变量.比如当前用户是谁 当前shell是什么 当前用户的家目录在什么位置等等
2.预定义变量
预定义变量:系统预定义好的 和进程名称 进程编号 进程参数 进程返回值相关
3.位置变量:和命令行参数相关
4.自定义变量(用户自己定义的变量)
echo
> :定向符,可生成文件
>>:追加符,将字符追加到文件中
如:echo 123 > a.txt
echo $a 输出a的变量值
环境变量,子shell是有继承性的,自定义变量没有继承性
export:使变量拥有继承性
用户家目录下
.bash_logout 表示用户退出时所要执行的命令
.bash_history 记录当用户退出时写入用户执行过得命令
.bashrc 保存执行的环境变量和其他自动执行的命令和变量
.bash_profile 保存用户搜索命令的路径,PATH变量是保存在.bash_profile 文件中
su命令的区别
su作为系统常用切换用户的命令,这也是linux自动化运维需要了解到的常识
su 后加- 和不加-的区别在于是否彻底切换到用户的环境
不加“-”不彻底切换 ,所执行的命令还是在 切换前用户的权限下;user1 su root 所执行命令时所执行的是 /bin 命令
加 “-”表示彻底切换,所执行命令时是所在当前用户权限下, user su - root 所执行命令的是/sbin 下的命令
env 查看系统全部环境变量
env | wc -l
set查看所有变量
添加到环境变量
PATH=$PATH:/usr/lib/qt-3.3/bin:/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin:/root/bin:/usr/local/nginx/sbin/nginx
export c=20 导出,继承性(当你在一个shell下设置一个变量,他的子shell也起作用)
unset c 取消变量 unset c=100
1、~./bashrc 不需要登录加载的文件
2、~./bash_profile 是需要登录之后加载的文件
3、/etc/bashrc
4、/etc/profile 这两个文件是全局加载的文件,对于哪个户都起作用;
PS1='^.^' 在终端中更改提示符
set 显示当前的变量信息,设置变量 set c=100
unset 取消变量 unset c=100
echo $HOSTNAME=hostname
echo $PWD=pwd
echo $UID=id
echo $PATH
PS1环境变量的格式
PS2第2终端符
环境变量:
输入用户名密码登录的时候启动的4个脚本:
/etc/bashrc
/etc/profile
~/.bashrc
~/.bash_profile
bashrc 非登录shell读他
profile 登录shell读他
可以把想要开机启动的命令写到这4个脚本里面
还没有评论,快来抢沙发!