环境变量
用户级文件
[root@des ~]# vim .bash_profile
export a=1
[root@des ~]# exit
[kiosk@foundation1 ~]$ ssh [email protected]
###系统文件需要重启
[root@des ~]# sh /mnt/test.sh
1
[root@des ~]# su - student
[student@des ~]$ sh /mnt/test.sh
###无输出
[student@des ~]$ vim .bash_profile
###无export a=1项
[student@des ~]$ exit
[root@des ~]# ls -a
[root@des ~]# vim .bash_profile
###有export a=1项
#####
还原
对所有用户生效,系统级变量
/etc/profile:此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行;并从/etc/profile.d目录的配置文件中搜集shell的设置 |
/etc/bashrc:对所有用户生效;为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取 |
[root@des ~]# source /etc/profile
[root@des ~]# sh /mnt/test.sh
5
###读取变量后,写入文件生效
[root@des ~]# su - student
[student@des ~]$ sh /mnt/test.sh
5
###切换用户以及环境,仍然可以显示
[root@des student]# echo $PATH
###查看shell
[root@des ~]# chmod 777 /mnt/test.sh
[root@des ~]# /mnt/test.sh
1
[root@des ~]# test.sh
bash: test.sh: command not found...
[root@des ~]# vim .bash_profile
export PATH=$PATH:/mnt
[root@des ~]# exit
[kiosk@foundation1 ~]$ ssh [email protected]
[root@des ~]# test.sh
5
###重启后生效
[root@des ~]# vim /etc/profile
export a=10
[root@des ~]# vim /etc/bashrc
export b=5
[root@des ~]# su - student
[student@des ~]$ echo $a
[student@des ~]$ echo $b
[student@des ~]$ su
[root@des ~]# echo $a
10
[root@des ~]# echo $b
5
###,若数字有误,将影响本次实验的其他实验数据还原
注意: 变量不能数字开头 元字符、 转义符只能引用 弱引用"" 强引用'' $$当前开启的shell 弱引用""不能转义/ ! ' $,应使用强引用'' |
[root@des ~]# a=#
###给a赋值
[root@des ~]# echo a
a
###输出a
[root@des ~]# echo $a
###输出赋给a的值
[root@des ~]# echo #
###不显示元字符
转义字符\
[student@des root]$ echo \*
*
[student@des root]$ echo \**#
**#
[root@des ~]# echo \* *
* anaconda-ks.cfg Desktop Documents Downloads Music Pictures Public tast Templates Videos
###\只能转义字符串
交互式的定义变量
read -p “input” 显示
read -s 隐藏
#!/bin/bash
[ -z $1 ] && {
echo " input "
exit
}
[ -e $1 ] && {
read -p " welcom " ###输出字符,enter后继续下一命令
vim $1
}
###将-p换为-s,内容不显示,enter继续下一命令
#!/bin/bash
[ -z $1 ] && {
echo "Please input filename "
exit
}
[ -e $1 ] && {
read -s " welcom,enter your passwd "
vim $1
}
命令别名
alias
格式
alias xie='vim'
[root@des ~]# alias xie='vim'
[root@des ~]# xie file
[root@des ~]# exit
[kiosk@foundation1 ~]$ ssh [email protected]
[root@des ~]# xie file
bash: xie: command not found...
###退出后失效,说明是暂时性的
[root@des ~]# vim .bashrc
###root用户的环境变量
alias xie='vim'
[root@des ~]# xie file
bash: xie: command not found...
[root@des ~]# source .bashrc
###重新加载
[root@des ~]# xie file
[root@des ~]# su - student
[student@des ~]$ xie file
bash: xie: command not found...
###切换用户后失效,说明只对root用户起作用
还原
[student@des ~]$ su
[root@des student]# cd ~
[root@des ~]# ls -a
[root@des ~]# vim .bashrc
#alias xie='vim'
实验
[root@des ~]# vim /etc/bashrc
alias xie='vim'
###编辑用户级环境变量
[root@des ~]# source /etc/bashrc
###重新读取文件
[root@des ~]# xie file
[root@des ~]# su student
###切换用户
[student@des root]$ xie file
[root@des ~]# su
[root@des ~]# su - student
###切换用户及环境
[student@des ~]$ xie file
[root@des student]# vim /etc/bashrc
#alias xie='vim'
###还原
[root@des student]# vim /etc/profile
alias xie='vim'
###编辑系统级环境变量
[root@des student]# source /etc/profile
[root@des student]# su student
[student@des ~]$ xie file
bash: xie: command not found...
###切换用户后‘写’不可用
[student@des ~]$ su - student
[student@des ~]$ xie file
###切换环境及用户,可用