自学Linux Shell5.2-shell内建命令history alias
5.2-shell内建命令history alias
外部命令:有时称为文件系统命令,是存在于bash shell之外的程序,通常位于/bin、/usr/bin 、/sbin 、/usr/sbin中
当外部命令执行时会创建一个子进程,叫做衍生,,此时就需要花费时间和精力设置新i进程的环境
ps就是一个外部命令,可以使用which、type命令找到它
内建命令: 不需要借用外部程序来运行。执行速度快效率高。
cd exit 都是内建命令(有的命令既有内建命令也有外部命令,如echo、pwd)


内建命令history
用于显示历史记录和执行过的指令命令。
history命令读取历史命令文件中的目录到历史命令缓冲区和将历史命令缓冲区中的目录写入命令文件。
该命令单独使用时,仅显示历史命令
在命令行中,可以使用符号!执行指定序号的历史命令。例如,要执行第2个历史命令,则输入!2。
!! 执行上一条历史命令
history num 查看历史命令后num条
!str 执行指定str开头的命令(最后一个)
!? 获得最后执行的状态码
history(选项)(参数)
- -N: 显示历史记录中最近的N个记录;
- -c:清空当前历史命令;
- -a:将历史命令缓冲区中命令写入历史命令文件中;
- -r:将历史命令文件中的命令读入当前历史命令缓冲区;
- -w:将当前历史命令缓冲区命令写入历史命令文件中;
- -d<offset>:删除历史记录中第offset个命令
- -n<filename>:读取指定文件





history命令是被保存在内存中的,当退出或者登录shell时,会自动保存或读取。在内存中,历史命令仅能够存储1000条历史命令,该数量是由环境变量 HISTSIZE进行控制。
默认是不显示命令的执行时间,命令的执行时间,history 已经记录,只是没有显示。
注:如想查询某个用户在系统上执行了什么命令,可以使用root用户身份登录系统,检查Home目录下的用户主目录下的“.bash_history”文件,该文件记录了用户所使用的命令和历史信息。
历史命令(环境变量)配置文件/etc/profile
- 历史命令 默认保存1k条,可以在环境变量配置文件/etc/profile中修改 HISTSIZE=xxx
- 历史命令 默认保存文件修改 HISTFILE=/path/FILENAME
- 历史命令 剔除连续重复的条目 HISTCONTROL=ignoredups
- 历史命令 忽略指定命令HISTIGNORE=”pwd:ls:cd:”
- 历史命令 格式化输出HISTTIMEFORMAT=’%F %T ’ ,bt只能输出设置生效之后的
内建命令alias
alias命令用来设置指令的别名
- -p:打印已经设置的命令别名。(可加可不加)
- unalias 取消别名



此时设定的别名,重启设备后就失效,若想永久保存,需要在.bashrc 下填写别名保存。
自学Linux Shell5.2-shell内建命令history alias的更多相关文章
- Bash Shell内建命令和保留字
Bash Shell内建命令和保留字命令含义!保留字,逻辑非:不做任何事,只做参数展开.读取文件并在shell中执行它alias设置命令或命令行别名bg将作业置于后台运行bind将关键字序列与read ...
- Linux编程 10 (shell外部命令与内建命令,alias ,type命令)
一. 内部命令 Linux命令有内部命令(内建命令)和外部命令之分,内部命令和外部命令功能基本相同,但也有些细微差别.内部命令不需要使用子进程来执行,它们已经和shell编译成一体,作为shell工 ...
- Linux Shell 内建命令:冒号(:)
https://blog.csdn.net/honghuzhilangzixin/article/details/7073312/ 在Linux系统中,冒号(:)常用来做路径的分隔符(PATH),数据 ...
- Linux - Bash shell的功能;内建命令type
命令编修能力 (history): bash 的功能里头,相当棒的一个就是『他能记忆使用过的命令!』 这功能真的相当的棒!因为我只要在命令列按『上下键』就可以找到前/后一个输入的命令!而在很多 dis ...
- Linux 内建命令和系统命令
shell内建命令是指bash(或其它版本)工具集中的命令.一般都会有一个与之同名的系统命令,比如bash中的echo命令与/bin/echo是两个不同的命令,尽管他们行为大体相仿.当在bash中键入 ...
- Shell脚本之四 内建命令
所谓 Shell 内建命令,就是由 Bash 自身提供的命令,而不是文件系统中的某个可执行文件. 可以使用 type 来确定一个命令是否是内建命令: [root@localhost ~]# type ...
- BASH BUILTIN COMMANDS 内建命令
除非另外说明,这一章介绍的内建命令如果接受 - 引导的选项,那么它也接受 -- 作为参数,来指示选项的结束 : [arguments] 没有效果:这个命令除了扩展 arguments 并且作任何指定的 ...
- 6 shell内置命令
知识点1:什么是shell内建命令? Shell 内建命令,就是由 Bash 自身提供的命令,而不是文件系统中的某个可执行文件. 内建命令与普通命令的性质是不一样的,内建命令并不是某个外部文件,只要在 ...
- Linux内建命令和外部命令
Linux命令有内部命令(内建命令)和外部命令之分,内部命令和外部命令功能基本相同,但也有些细微差别. [内部命令 vs. 外部命令] (1)内部命令实际上是shell程序的一部分,其中包含的是一些比 ...
随机推荐
- sql文件或连接数据库反向生成pdm文件
1. File -> Reverse Engineer -> Database 2.选择sql数据库类型 mysql / sqlserver /oracle 3.using script ...
- 如何启动Intel VT-X及合理利用搜索
昨天安装Vmware的时候不幸遇到了Vt-X被禁用的麻烦,上网百度了一下才知道要进入Bois进行设置.说起百度就不得不提到模糊搜索这个概念.这个特性的优点和缺点可谓同等突出,有了模糊搜索大家可以在信息 ...
- Scrum Meeting NO.7
Scrum Meeting No.7 1.会议内容 经过老师提醒,我们认识到,应尽快把主要功能实现,其他的细枝末节应在这之后慢慢添加.当今最重要的任务是和online组和数据处理组实现数据共享. 此外 ...
- 20135337——Linux实践二:模块
一.编译&生成&测试&删除 1.编写模块代码,查看如下 gedit 1.c(编写) cat 1.c(查看) MODULE_AUTHOR("Z") MODUL ...
- <<浪潮之巅>>阅读笔记三
纵看世界,横看国内.我们国内也有很多很优秀的企业正在走向或者已经处于浪潮之巅.阿里巴巴.腾讯和百度这三巨头应该是我们计算机行业的龙头.但是 不得不说,在创新方面我们做的并不多,这是值得每一个从事计算机 ...
- 广商博客冲刺第三天new
第二天沖刺傳送門 第三四天沖刺傳送門 这一天我们主要是弄网页前台设计跟框架设计,这方面主要是由张奇聪负责.我们在amaze ui,smart ui,angularjs+bootstrap中挑选,最终选 ...
- tftp服务、串口工具minicom
linux下安装tftp服务 参考这位仁兄的经验 确实百度上很多关于配置tftp服务的方法,但是这篇文章的介绍真的是很精简,对于一个刚接触纯linux环境的小白来说是很舒服的一件事. 首先是安装tft ...
- 安装phpredis扩展
本文是根据菜鸟教程中的内容而写的,因为按照教程中做法来操作,中间遇到一些问题,我在centos6.5和ubuntu16.4中都遇到了,所以写在这里.强烈建议你先看完这篇博客,然后再操作,能省不少事. ...
- css3 @media 实现响应式布局
使用css3的@media,可以实现针对不同媒体.不同分辨率的响应式布局. 方法1:根据不同分辨率使用不同css文件 <link rel="stylesheet" media ...
- Docker 方式运行 sonarqube
From 平台测试部同事的 ppt 感谢. 拉取镜像 docker pull postgres docker pull sonarqube 运行镜像 docker run --name db --re ...