扩展:
bashrc和bash_profile的区别
http://ask.apelearn.com/question/7719
简易审计系统:
http://www.68idc.cn/help/server/linux/2014042190951.html
关于PROMPT_COMMAND环境变量的含义
http://www.linuxnote.org/prompt_command-environment-variables.html
8.6 管道符和作业控制
管道符
管道符作用:前面命令输出结果 管道符传给 后面命令执行
1. ls命令(列出当前目录下所有文件目录),管道符(传给后面命令) wc -l命令(统计出有多少数量)
[root@hao-01 ~]# ls |wc -l
作业控制
1. 停止 任务: Ctrl + z
正在编辑1.txt,用Ctrl + z,把编辑器vim命令暂停了(不是结束掉)
[root@hao-01 ~]# vim 1.txt
键盘快捷键操作: Ctrl + z
运行了vmstat,每1秒,执行刷新一次;用Ctrl + z,把这个命令暂停(不是结束掉)
[root@hao-01 ~]# vmstat 1
键盘快捷键操作: Ctrl + z
2. 列出 所有暂停任务 :
[root@hao-01 ~]# jobs
3. 恢复 暂停任务(恢复到前台):
[root@hao-01 ~]# fg
4. 恢复 多个停止任务(恢复到前台):
fg 停止任务ID号
[root@hao-01 ~]# fg 2
5. 运行睡眠命令,设定1000秒:
[root@hao-01 ~]# sleep 1000
键盘快捷键操作: Ctrl + z
6. 把暂停任务,丢到后台并运行 :
bg 任务ID号
[root@hao-01 ~]# bg 3
7. 一次把任务(执行的命令),丢到后台并运行 :
任务执行命令 &
[root@hao-01 ~]# sleep 200 &
8.7 shell变量(上)
本地变量:
中文显示(语言)变量:LANG=zh_CN.UTF-8
英文显示(语言)变量:LANG=en
查看系统内置常用环境变量 : env
查看系统和自定义所有的变量 :set
1. 自定义环境变量:
自定义环境变量名规则:字母、数字、下划线 (首位,不能为数字)
自定义变量名=自定义值
[root@hao-01 ~]# a=111
[root@hao-01 ~]# echo $a
2. 自定义环境变量,定义值特殊,要用''单引号括起来:
自定义环境变量名规则:字母、数字、下划线 (变量名首位,不能为数字)
自定义变量名='特殊的定义值'
[root@hao-01 ~]# b='1 2'
[root@hao-01 ~]# echo $b
3. 变量叠加变量值,变量名,要用""双引号括起来:
自定义环境变量名规则:字母、数字、下划线 (首位,不能为数字)
自定义变量名="$变量名a"附加值"$变量名b"
[root@hao-01 ~]# c="$a"D"$b"
4. 查看变量名,对应的值: echo $ 变量名
[root@hao-02 ~]# echo $c
8.8 shell变量(下)
全局变量:向下子shell生效
本地变量,向下的子shell不会同步生效!
1. 安装pstree命令:
[root@hao-01 ~]# yum install -y psmisc
2. 进去子shell:
[root@hao-01 ~]# bash
3. 查看当前在哪个shell下:pstree
[root@hao-01 ~]# pstree
4.
自定义本地变量:
[root@hao-01 ~]# hao=linux
查看hao变量名,所对应的值:
[root@hao-01 ~]# echo $hao
进入下一个子shell:
[root@hao-01 ~]# bash
再次查看hao变量名,所对应的值:
[root@hao-01 ~]# echo $hao
结果:进入下一个子shell,再查看hao变量值,没有同步!!!
全局变量,向下的子shell会同步生效!
1. 查看当前在哪个shell下:pstree
[root@hao-01 ~]# pstree
2.
自定义全局变量:
[root@hao-01 ~]# export hao=linux
查看hao变量名,所对应的值:
[root@hao-01 ~]# echo $hao
进入下一个子shell:
[root@hao-01 ~]# bash
再次查看hao变量名,所对应的值:
[root@hao-01 ~]# echo $hao
结果:进入下一个子shell,再查看hao变量值,已同步!!!
8.9 环境变量配置文件
系统环境变量配置文件分两个维度:系统层次和用户层次
系统层次:etc下面的文件(一般不编辑)
/etc/profile (用户登录的时候会加载到,)
/etc/bashrc (用户或系统执行shell脚本时候,会用调用这个文件里的一些配置)
用户层次:用户夹目录下的文件(可编辑)
~/.bashrc
~/.bash_profile
~/.bash_history
~/.bash_logout (用户退出时候做的一些操作。例:每次退出,删除命令历史,把删除命令历史命令,放到这个文件里即可!!!)
Linux环境变量之“PS1"
http://ask.apelearn.com/question/5364
1. 查看PS1环境变量值:
[root@hao-01 ~]# echo $PS1
2. 更改PS1变量值(大写W,改为小写w),显示绝对路径 :
[root@hao-01 ~]# cd /etc
[root@hao-01 ~]# PS1='[\u@\h \w]\$'
[root@hao-01 /etc]#
3. 更改PS1变量值,变颜色:
[root@hao-01 ~]# PS1='\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;36m\]\w\[\033[00m\]\$'
4. 更改PS1变量值,取消方括号,换成花括号(也可换成其他符号):
[root@hao-01 ~]# PS1='{\u@\h \W}\$'
[root@hao-01 ~]# PS1='<\u@\h \W>\$'
进入另外的终端下,就是PS2模式下了:
1. 查看PS2环境变量值:echo $PS2
[root@hao-01 ~]#echo $PS2
2. PS2的显示格式:
[root@hao-01 ~]#for i in `seq 1 10`