Linux Shell基础 Bash常见命令 history、alias命令以及常用快捷键
概述
历史纪录命令:history
- -c:清空历史命令;
- -w:把内存中的命令直接写入 ~/.bash_history 文件中
查询系统中当前用户的所有历史命令
[root@localhost ~]# history 1 ls 2 cd / 3 ls 4 poweroff -h now 5 poweroff h now 6 poweroff 7 whereis ls …省略部分输出…
把内存中的命令直接写入 ~/.bash_history 文件中
当前登录操作的命令并没有直接写入 ~/.bash_history 文件中,而是保存在缓存当中的,需要等当前用户注销之后,缓存中的命令才会写入 ~/.bash_history 文件中。所以,我们在使用 history 命令查看的历史命令 和 ~/.bash_history 文件中保存的历史命令的数目是对不上的。如果我们需要把内存中的命令直接写入 ~/.bash_history 文件中,而不等用户注销时再写入,就需要使用"-w"选项。命令如下:
[root@localhost ~]# history -w #把缓存中的历史命令直接写入~/.bash_history
清空历史命令
把缓存和 ~/.bash_history 文件中的历史命令清空。
[root@localhost ~]# history -c
历史命令的调用
1. 使用"!n"重复执行第 n 条历史命令,n为命令的编号。
2. 使用"!!"重复执行上一条命令。
3. 使用“!bash” 重复执行最后一条以bash开头的命令
4. 使用"!$" 重复上一条命令的最后一个参数。
例如:
[root@localhost ~]# cat /etc/profile 查看系统配置文件中的内容 [root@localhost ~]# vi !$ # "!$"代表上一条命令的最后一个参数,也就是/etc/profile
命令设置别名的命令 :alias
在shell脚本中命令首先会执行用绝对路径或相对路径执行的命令。其次执行别名。其次执行 Bash 的内部命令。其次执行按照 $PATH 环境变量定义的目录査找的第一条命令。
查询系统中已经存在的命令别名
[root@localhost ~]# alias alias cp='cp -i' alias egrep='egrep --color=auto' alias fgrep='fgrep --color=auto' alias grep='grep --color=auto' alias l.='ls -d .* --color=auto' alias ll='ls -l --color=auto' alias ls='ls --color=auto' alias mv='mv -i' alias rm='rm -i' alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'
设定命令别名
[root@1ocalhost ~] # alias 别名='原命令'
为了让这个别名永久生效,可以把别名写入环境变量配置文件 ~/.bashrc 中。命令如下:
[root@localhost ~】# vi /root/.bashrc
删除别名
[root@localhost ~]# unalias 别名
Bash常用快捷键
Bash 常用快捷键快捷键 | 作 用 |
---|---|
Ctrl+A | 把光标移动到命令行开头。如果我们输入的命令过长,则在想要把光标移动到命令行开头时使用 |
Ctrl+E | 把光标移动到命令行结尾 |
Ctrl+C | 强制中止当前的命令 |
Ctrl+L | 淸屏,相当于 clear 命令 |
Ctrl+U | 刪除或剪切光标之前的命令。假设输入了一行很长的命令,无须使用退格键一个一个字符地刪除, 使用这个快捷键会更加方便 |
Ctrl+K | 删除或剪切光标之后的内容 |
Qrl+Y | 粘贴 Ctrl+U 或 Ctrl+K 剪切的内容 |
Ctrl+R | 在历史命令中搜索,按下 Ctrl+R 组合键之后,就会出现搜索界面,只要输入搜索内容,就会从历史命令中搜索 |
Ctrl+D | 退出当前终端 |
Ctrl+Z | 暂停,并放入后台。这个快捷键涉及工作管理的内容,我们会在后续中详细介绍 |
Ctrl+S | 暂停屏幕输出 |
Ctrl+Q | 恢复屏幕输出 |