一、管道符和作业控制 管道符 |:表示把一个文件的输出的内容传递给后面的命令 grep :用来过滤指定关键词的命令 运用实例: [root@linux-01 ~]# ls |wc -l //列出当前目录下有多少行 8 [root@linux-01 ~]# find ./ -type f //列出当前目录下的所有文件 ./.bash_logout ./.bash_profile ./.bashrc ./.cshrc ./.tcshrc ./.bash_history ./.ssh/known_hosts ./.ssh/authorized_keys ./anaconda-ks.cfg.1 ./2.txt ./11.txt ./.lesshst ./1.txt ./1.txt.zip ./.viminfo ./3.txt ./4.txt [root@linux-01 ~]# find ./ -type f |wc -l //可以使用管道符来查看文件数量 17

Ctrl+z快捷键:把当前任务临时暂停下 fg n命令(foreground 前台的缩写):把刚暂停的当前任务重新启动,调用回来,n代表ID号,如调用暂停ID为1的进程,可以使用 #fg 1来进行调用 jobs :把停止的任务列出来 bg n命令(background后台的缩写):把任务丢到后台并运行,n代表ID号,如#bg 1,把进程1丢到后台并运行 #sleep 100 & 命令:指把sleep 100这一条命令丢到后台并运行,命令+&的格式 #ps aux |grep sleep //查看sleep进程

二、Shell变量 #env //查看系统内置环境变量 #set //不仅查看系统内置变量,还可以查看用户自定义变量 [root@linux-01 ~]# a=111 //自定义环境变量,例如a=111 [root@linux-01 ~]# echo $a 111 #set |grep 111 //使用set命令查看自定义变量111 变量名规则:字母、数字、下划线,首位不能是数字

变量值有特殊符号是需要用单引号括起来,例如:#a='a b c [root@linux-01 ~]# a='a b c' [root@linux-01 ~]# echo $a a b c ' 变量的累加:例如变量a b累加 [root@linux-01 ~]# a=1 [root@linux-01 ~]# b=2 [root@linux-01 ~]# echo $a$b 12

[root@linux-01 ~]# c="a$bc" //被识别为$bc [root@linux-01 ~]# echo $c a [root@linux-01 ~]# c="a$b"c //需要把$b和c分开写,变量复杂的时候用单引号或双引号 [root@linux-01 ~]# echo $c a2c

[root@linux-01 ~]# c=a"$b"c //赋值中有复杂变量使用双引号引起来 [root@linux-01 ~]# echo $c a2c

w 命令:查看当前登录系统的用户 [root@linux-01 ~]# w //查看当前登录系统的用户
22:20:03 up 24 min, 2 users, load average: 0.00, 0.01, 0.06 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT root pts/0 192.168.238.1 21:56 3.00s 0.22s 0.06s w root pts/1 192.168.238.1 22:19 6.00s 0.06s 0.06s -bash [root@linux-01 ~]# echo $SSH_TTY //可以查看哪个是自己登录的用户 /dev/pts/0

定义全局变量: 格式如:export b=2 [root@linux-01 ~]# export hll=linux 定义全局变量hll=linux [root@linux-01 ~]# echo $hll linux [root@linux-01 ~]# bash //新打开一个子shell,直接运行#bash,echo $hll还是可以输出linux,这就是全局变量 [root@linux-01 ~]# echo $hll linux

系统中没有pstree命令,可以使用# yum install psmisc #using psmisc package for pstree安装 pstree命令可以直观查看目录结构,可以看到pstree在新的bash中运行,echo $hll,同样生效,这就是全局变量,全局变量是向下生效的,与平行的bash不生效的

unset 自定义变量名 //取消自定义变量 #bash //进入一个新的子shell

三、环境变量配置文件 环境变量配置文件/etc/profile 和 /etc/bashrc属于系统层次的,一般不要进行修改; 可以修改用户家目录下的~/.bashrc ~/.bash_profile 这些属于用户层次的,可以对单个用户进行设置

[root@linux-01 ~]# vim .bash_profile //编辑家目录下的.bash_profile [root@linux-01 ~]# source .bash_profile 或者#. .bash_profile //编辑完之后需要让配置文件立马生效,可以使用source 或者 . ,这里的.和source效果一样,都是加载配置文件配置

~/.bash_logout文件中可以定义让某个用户退出登录时删除它的命令历史,可以在这个配置文件中放一条删除历史命令的命令

关于PS1 PS1可以在 [root@linux-01 ~] //从左到右,依次是当前用户,@,主机名,当前所在目录 [root@linux-01 ~]# cd /etc/sysconfig/network-scripts/ [root@linux-01 network-scripts]# echo $PS1 [\u@\h \W]$ // \u就是user,\h就是hostname,\W就是当前目录 #PS1='[\u@\h \w]$' //如果将W改为小写的w,那么它就会显示绝对路径 实例: [root@linux-01 network-scripts]# PS1='[\u@\h \w]$' //将W改为小写的w [root@linux-01 /etc/sysconfig/network-scripts]# //就会显示成绝对路径的

[root@linux-01 /etc/sysconfig/network-scripts]#PS1='<\u@\h \w> $' //可以修改[ ]为< > <root@linux-01 /etc/sysconfig/network-scripts> # //修改之后原来[ ]就变为了<> $符号,root用户是#,其他普通用户是$ [root@linux-01 network-scripts]#PS1='[\033[01;32m]\u@\h[\033[00m]:[\033[01; 36m]\w[033[00m]$] ' //修改颜色 PS2:进入到MySQL中需要进入mysql的小终端,就进入到PS2 [root@linux-01 network-scripts]#echo $PS2