补全
-
命令补全:
在给定的一个打头的字符串,如果这个额字符串能够唯一的标识程序文件,直接补全,如果不能唯一标定,需要再次敲击tab键,会给出列表 -
路径补全:
在给定的起始路径下,以对应路径下的打头的字符串逐一匹配给定的起始路径下的每一个文件:
tab:
如果能够唯一标识,直接补全
否则再敲一次tab键,给出列表
快捷键
快捷键 | 用法 |
---|---|
Ctrl+l | 清屏 |
Ctrl+c | 终止 终止前台运行的程序 |
Ctrl+a | 光标移动到命令行的最前端 |
Ctrl+e | 光标移动到命令行的最后端 |
Ctrl+D | 退出 等价exit |
Ctrl+r | 搜索历史命令,利用关键词 |
Ctrl+u | 删除光标前的字符 |
Ctrl+k | 删除光标后的字符 |
历史
- history
- 变量
HISTSIZE 当前shell进程可以保存命令历史的条数
HISTFILE 保存命令历史的文件
HISTFILESIZE 命令历史文件的大小
HISTCONTROL
ignoredups 忽略重复命令
ignorespace 忽略以空白开头的命令
ignoreboth 以上两者都生效
修改变量方法:HISTCONTROL=‘ignorespace’
查看变量方法 echo $变量名 - 命令用法
history | 作用 |
---|---|
-c | 清空命令历史列表 |
-d offset | 指定删除命令历史 |
-r | 从命令历史文件中读取命令历史到命令历史列表 |
-w | 从列表到文件 |
!! 再一次执行上一条命令
!# 执行命令历史列表中的第#命令
!string:再一次执行命令历史列表中最近一个以string打头的命令
!$ :调用上一个命令的最后一个参数
(快捷键ESC + . esc键加点号)
命令别名
查看命令别名:alias [root@localhost ~]# alias
定义别名:
alias NAME=‘commond’ 仅仅在当前shell环境有效
alias net=‘vi /etc/sysconfig/network-scripts/ifcfg-eth0’
撤销别名:
unalias NAME
跳过别名:
\ command
永久生效别名:
vi /etc/bashrc 添加一行 alias NAME=‘commond’
重载一下 source /etc/bashrc
特殊符号
| 管道符 把一个程序的输出当作另外一个程序的输入。
. 一个点号 表示当前目录
..俩个点号 表示上一级目录
; 分号 在linux中执行多条命令时可以用分号隔开,每个命令之间无不干扰,所有命令都会执行
``发反引号 命令替换,反单引号引起的内容当作命令执行
‘’单引号 强引用,所见即所得
“”双引号 弱引用 变量或者命令的替换
[root@bogon tmp]# sum=12+12
[root@bogon tmp]# echo "$sum"
12+12
[root@bogon tmp]# echo '$sum'
$sum
* 星号 通配作用
{}大括号 做扩展使用
重定向
Linux提供的三种IO设备
STDIN 标准输入 0 默认来自于键盘
STDOUT 标准输出 1 默认到终端窗口
STDERR 标准错误 2 默认到终端窗口
重定向就是不适用系统的标准输入端口,标准输出端口和标准错误输出端口,而进行重新的指定,所以重定向分为输入、输出和错误重定向,通常情况下重定向到一个文件。
正确输出重定向:1>覆盖 1>>追加
错误输出重定向:2>覆盖 2>>追加
混合输出重定向:&>正确输出和错误混合输出 **2>&1正确和错误都输入到相同位置**
命令通配符
通配符 | 含义 |
---|---|
* | 匹配任意长度的任意字符 |
? | 匹配任意单个字符 |
[] | 匹配指定范围内的任意单个字符 |
[^] | 匹配指定范围外的任意单个字符 |
[0-9] 所有数字
[a-z] aAbB......z
[A-Z] AbB......zZ
[[:lower:]] 小写字母
[[:upper:]] 大写字母
[[:digit:]] 数字
[[:alpha:]] 所有字母
[[:punct:]] 标点符号
[[:alnum:]] 数字+字母
[[:space:]] 空白字符
[^[:lower:]] 除小写字母