一.补全
1.命令补全:给定的打头的字符串如果在系统中能够唯一的标识某一个命令程序文件,按一下tab键,直接补全
如果不能够唯一标识,则需要再次敲击tab键,会给出命令列表
路径补全:和命令补全机制不同
在给定的起始路径下:以对应路径下打头的字符串来逐一匹配起始路径下的每一个文件
tab:如果能够唯一标识,则直补全,否则,再一次敲击tab键,给出列表
2、快捷键
Ctrl+c 终止前台运行的程序
Ctrl+d 退出,exit logout
Ctrl+l 清屏
Ctrl+a 光标移动到命令行的最前端
Ctrl+e 光标移动到命令行的最后端
Ctrl+u 删除光标前所有的字符
Ctrl+k 删除光标后所有的字符
Ctrl+r 搜索命令历史
3、命令历史
history
HISTSIZE:shell进程中可以保留的命令历史的条数, ehco $HISTSIZE
HISTFILE:持久保持命令历史的文件
HISTFILESIZE:命令历史文件大小
history:
history [-c] [-d offset] [n]
history -anrw [filename]
history -ps arg [arg...]
-c:清空命令历史
history -ps arg [arg…]
-c:清空命令历史
-d offset:删除指定的命令历史
-r:从文件中读取命令历史到命令历史列表中 .bash_history—>内存
-w:把命令历史列表中的命令追加到命令历史文件中 .bash_history<—内存
history #:显示最近的#条命令
!#:执行命令历史列表中第#条命令
!!:执行上一条命令
!STRING:再一次执行命令历史列表中最近一个以STRING开头的命令
调用上条命令的最后一个参数
ESC . ESC键+点号
4、命令别名
# alias name='commond' 定义别名
注意:仅对当前shell环境有效
# unalias name 撤销别名
永久保存别名
# vi /etc/bashrc
alias name='commond'
5、变量
本地变量:当前shell环境生效当前shell进程中某一个代码段,通常指某一个函数
局部变量:当前的shell进程生效,其他shell包括子shell均不生效
环境变量:当前shell进程以及子进程
6、特殊的符号
|:管道 p 将前一个命令的执行结果当作后一个命令的输入
进程管道:当前程序运行中执行
tee:
. 点号 当前目录
.. 双点号 上一级目录
; 分号 分割命令 linux在执行多条命令时。可以用分号分开,顺序的去独立执行各条命令,每条命令不关心是否失败,所有命令都执行
``:反单引号,命令替换
'':单引号,强引用,不做变量的替换
"":双引号,弱引用,可以实现变量和命令的替换
{}:做扩展,或者在shell脚本中构建代码块
*:表示通配
7、输入输出重定向:
linux系统三种IO设备
标准输入 STDIN-----0 默认来自于键盘的输入
标准输出 STDOUT----1 默认输出到终端窗口
标准错误 STDERR----2 默认输出到终端窗口
重定向:
输入重定向 ------不太用
输出重定向:使用户将一个命令的执行结果输出重定向到一个文件中,而不是显示到屏幕上
1>:覆盖
1>>:追加
错误重定向:
2>
2>>
正确和错误都重定向到同一个位置:2>&1 &>
ls /tmp/file /tmp/file1 > test 2>&1
/dev/null:数据黑洞
/dev/zero:吐0机