管道符

将前一个命令的输出作为后一个命令的输入 cat 1.txt|wc -l 显示 1.txt 行数,先查看内容,再统计行数

作业控制

bg 将当前程序或进程调取到后台运行(挂起) fg 将当期程序或进程调取到前台进行 jobs 查看后台被挂起的进程 ctrl +z 暂停当期进程 ctrl +c 结束当前进程 ps 查看系统进程数 kill 杀死系统进程(指定PID) killall 杀死系统进程(指定名称)

变量

PATH HOME PWD LOGNAME

env命令 获取系统预设的全部系统变量(系统变量默认都是大写的)

set 多了很多变量,并且包括用户自定义的变量

自定义变量

变量名规则:字母、数字下划线,首位不能为数字 变量中有特殊字符,千万记得要两边加单引号 [root@aminglinux01 ~]# a='a b c ' [root@aminglinux01 ~]# echo $a a b c [root@aminglinux01 ~]# a= "a b c d " -bash: a b c d : 未找到命令 [root@aminglinux01 ~]# a= "a b c d" -bash: a b c d: 未找到命令 [root@aminglinux01 ~]# a='a$bc' [root@aminglinux01 ~]# echo $a a$bc

变量的累加

这是个很有意思的例子

全局变量

(当前shell的子shell继承当前父shell,即孙子有儿子的样子,儿子有你的样子,但你爸爸不会有你的样子) [root@aminglinux01 ~]# export aming=linux #声明全局变量 [root@aminglinux01 ~]# echo $aming linux [root@aminglinux01 ~]# bash #进入子shell [root@aminglinux01 ~]# echo aming aming
[root@aminglinux01 ~]# export aming=linux #进子shell的子shell [root@aminglinux01 ~]# bash [root@aminglinux01 ~]# echo aming aming #子shell 均可生效

取消全局变量

[root@aminglinux01 ~]# unset aming [root@aminglinux01 ~]# echo $aming #取消后不生效

环境变量配置文件

/etc/profile 用户环境变量,交互、登录才执行 /etc/bashrc 用户不登录,执行shell 就生效

只针对当前用户下的变量: ~/.bashrc
~/.bash_profile ~/.bash_history 用户历史记录记录 ~/.bash_logout 用户退出需要做的操作

vim .bash_profile . .bash_profile 或者 source .bash_profile使用户的.bash_profileshengxiao ===>会去自动调用 .bashrc===========>再会去自动调用/etc/bashrc

vim /etc/bashrc 配置PS1 PS1 显示用户登录时的信息

[root@aminglinux01 ~]# cd /etc/sysconfig/network-scripts/ [root@aminglinux01 network-scripts]# echo $PS1 [\u@\h \W]$ # 当前用户,主机名,相对路径