进程:在每个进程看来,当前主机上只存在内核和当前进程
进程是程序的副本,进程是程序执行实例
用户工作环境:
bash:
#
$
1、命令历史
2、管道、重定向
3、命令别名
4、命令行编辑
5、命令行展开
6、文件名通配
7、变量
8、编程
命令行编辑:
光标跳转:
Crtl+a:跳到行首
Ctrl+e:跳到行尾
Ctrl+u:删除光标至行首内容
Ctrl+k:删除光标至行尾内容
Ctrl+l:清屏
命令历史:
history:查看命令历史
-c:清空命令历史
-d OFFSET [n]:删除指定位置的命令
-w:保存命令历史至历史文件
命令历史的使用技巧:
!n:执行命令历史中的第n条命令
!-n:执行命令历史中的倒数第n条命令
!!:执行上一条命令
!string:执行命令历史中最近一个以指定字符串开头的命令
!$:引用前一个命令的最后一个参数
Esc .
命令补全
路径补全
命令别名:
alias CMDALIAS =‘COMMAND [options] [arguments]‘
在shell中定义的别名尽在当前shell生命周期中有效;别名的有效范围仅为当前shell进程;
unalias:撤销别名
\CMD:使用命令本身
命令替换:%(COMMAND),反引号:`COMMAND`
把命令中某个自命令替换为其执行结果的过程
e.g touch ./file-$(date +%F-%H).txt
``:命令替换
"":弱引用,可以实现变量替换
‘‘:强引用,不完成变量替换
文件名通配,globbing
*:任意长度的任意字符
?: 任意单个字符
[ ]:匹配指定范围内的任意单个字符
[ abc ],[ a-m ]
[:space:] 空白字符
[:punct:] 标点符号
[:lower:] 小写字母
[:upper:] 大写字母
[:alpha:] 大小写字母
[:digit:] 数字
[:alnum:] 数字和大小写字母
man 7 glob
[^]:匹配指定范围之外的任意单个字符