8.6 管道符和作业控制
管道符“|” 把前面命令的结果给后面的命令用。
cat server.log | grep "aaa";
ls | wc -l
ctrl+z #暂停任务,丢到后台运行,可以暂停多个任务
jobs #可以列出已经停止的任务
fg #命令能调回暂停任务到前台,多个任务时fg + 2命令号能调回
bg +任务编号2 # 能把2调到后台
sleep 1000#暂停1000秒
sleep 1000 & # 最后加上“&”可以直接丢到后台,其他终端只能看到进程,不能调回来
8.7/8.8 shell变量
env命令能获取系统的变量,变量的名字都是大写字母
set查看用户自定义变量和系统变量,会出来很多shell脚本
变量名规则:字母、数字下划线、首位不能为数字
变量值有特殊符号时需要用单引号括起来,双引号也可以,但是双引号对特殊符号不能脱意。会理解为一个变量
echo $SSH_TTY #查看当前用户在哪个终端下面
全局变量export bbb = 112 #在当前终端向下子shell所有bash中生效,
unset bbb #清空变量
8.9 环境变量配置文件
PATH环境变量
[root@wwlinux701 ~]# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
–系统层次的
/etc/profile 用户环境变量,交互,登录才执行
/etc/bashrc 用户不用登录,执行shell就生效
–用户层次的
家目录~/.bash_profile
家目录~/.bashrc
~/.bash_history
~/.bash_logout #用户退出时做的一些操作
cat .bash_profile
. ~/.bashrc 中第一个点相当于source加载这个配置文件,可以写成source ~/.bashrc
vi /etc/bashrc #ps1配置位置
$ps1 # 用户登录时的前缀显示,大写W是当前路径,小w是绝对路径
ps2 进入mysql后显示的> 就是ps2
PS2=”@” 设置后就会显示@,基本上不会修改这个参数
扩展
bashrc和bash_profile的区别 http://ask.apelearn.com/question/7719