history介绍及bash命令快速调用
在日常工作中,能够快速并准确的使用命令是必不可少的,下面为大家介绍一下其中的小技巧。
一、查找命令历史——history
使用history能够快速的找到之前输入过的命令。
# history

大家可以看到,你输入过的命令会在列表中显现出来。前面是命令编号,有什么用?请看下方详解。
额外选项:
# history N 显示最近的N条命令,例如history 5
# history -d N 删除第N条命令,这个N就是前面的编号,例如history -d 990
# history -c 清空命令历史
# history -a 将当前会话中的命令历史写入指定文件
指定文件是什么?就是历史记录的环境变量信息,它通常会保存在用户家目录下的.bash_history。
# echo $HISTFILE 使用此命令查看环境变量

# echo $HISTFILESIZE 查看最大保存数目

二、快速调用bash命令
当我们敲完一条命令后,系统就会将其记录下来,以备查看或快速调用。那么如何实现bash命令的快速使用?请看下方。
1.执行命令历史中的第N条命令
# !N
例如:上面截图中显示,989条命令为ls,当我们使用!989,系统就会再次执行一次ls命令。
2.执行上一条命令
# !!
例如:我执行uptime命令,之后马上使用!!,系统就会告知你上一条命令使用的是什么,并执行取回结果的。


3.执行命令历史中最近一次以字符串(string)开头的命令
# !string
例如:我在家目录下新建文件夹mkdir test,然后删除之rm -rf test。

现在看,家目录下没有test目录了。我执行!mk,大家可以看,刚才创建目录的命令又被执行了,再用!rm,目录又被删除了。但是注意,这样虽然很方便,但是由于有些命令开头很相似,因此很容易造成误操作,安全的办法还是看下history吧!
# !mk

# !rm

4.调用上一条命令的最后一个参数—— !$
我首先ls /var/log/目录,此时/var/log/就是ls命令的参数。

下面我想查看此目录下的messages文件,就可以这么写(为防止刷屏,使用了less)。

大家可以看到,命令会自动替换!$为/var/log/,是不是很方便!同样的,按下ESC,放开再按.也可以调用上个命令的参数,请大家自行尝试下。
如果上述描述有任何不对或者错误的地方,还请大家为我指认,感谢大家观看,谢谢! QQ:82800452
history介绍及bash命令快速调用的更多相关文章
- 在git bash中使用命令行调用tortoisegit提交代码或查看日志
Tortoisegit commit / show log命令行 TortoiseGitProc.exe /command:commit TortoiseGitProc.exe /command:lo ...
- Python调用Linux bash命令
import subprocess as sup # 以下注释很多(为了自己以后不忘), 如果只是想在python中执行Linux命令, 看前5行就够了 # 3.5版本之后官方推荐使用sup.run ...
- History(历史)命令用法15例
导读 如果你经常使用 Linux 命令行,那么使用 history(历史)命令可以有效地提升你的效率,本文将通过实例的方式向你介绍 history 命令的 15 个用法. 使用 HISTTIMEFOR ...
- Linux的压缩解压命令快速上手——解压篇
在Linux系统中,压缩文件通常是先将若干文件(包括目录)打包成一个tar文件,然后再调用压缩程序将tar文件压缩成相应的压缩包,这也就是为什么Linux系的压缩包的后缀通常都是像tar.gz,tar ...
- [转] Linux History(历史)命令用法 15 例
[From]https://linuxtoy.org/archives/history-command-usage-examples.html 如果你经常使用 Linux 命令行,那么使用 histo ...
- 【转】Linux(BASH)命令搜索机制
原文网址:http://www.mike.org.cn/articles/linux-linux-bash-command-search-mechanism/ 转自:Eric Cheung: Linu ...
- History(历史)命令用法 15 例
如果你经常使用 Linux 命令行,那么使用 history(历史)命令可以有效地提升你的效率.本文将通过实例的方式向你介绍 history 命令的 15 个用法. 使用 HISTTIMEFORMAT ...
- History(历史)命令用法
如果你经常使用 Linux 命令行,那么使用 history(历史)命令可以有效地提升你的效率.本文将通过实例的方式向你介绍 history 命令的用法. 使用 HISTTIMEFORMAT 显示时间 ...
- Linux Bash命令关于程序调试详解
转载:http://os.51cto.com/art/201006/207230.htm 参考:<Linux shell 脚本攻略>Page22-23 Linux bash程序在程序员的使 ...
随机推荐
- [CLR via C#]11. 事件
一. 设计要公开事件的类型 如果类型定义了事件成员,那么类型(或类型实例)就可以通知其他对象发生了一些特定的事情. 例如,Button类提供了一个名为Click的事件.应用程序中的一个或多个对象可能想 ...
- C#130问,初级程序员的面试宝典
首先介绍下,目前C#作为一门快速开发的语言,在面试的过程中需要注意的技术知识点,了解下面的知识点对于初级工程师入职非常有帮助,也是自己的亲身体悟. 1. 简述 private. protecte ...
- ASP.NET中Session简单原理图
刚学习Session,对session的理解相当肤浅,按照我的想法画了原理图,麻烦各位大神指正,谢了!
- [转]基于 Quercus 的手游项目终于上线了
原文:http://blog.andsky.com/quercus-php-ngame/ 经过半年的开发,我们第一款手游戏终于开发完毕,架构使用了 netty + Quercus 实现用 php 通过 ...
- Servlet3.0 Test
1. Servlet3.0 Test and Annotation used 你可以从tomcat7中lib文件夹中找到servlet-api.jar package com.goodfan.serv ...
- LinkedList的实现源码分析
LinkedList 以双向链表实现.链表无容量限制,但双向链表本身使用了更多空间,也需要额外的链表指针操作. 按下标访问元素--get(i)/set(i,e) 要悲剧的遍历链表将指针移动到位(如果i ...
- 通过一个小问题来学习SQL关联查询
原话题: 是关于一个left join的,没有技术难度,但不想清楚不一定能回答出正确答案来: TabA表有三个字段Id,Col1,Col2 且里面有一条数据1,1,2 TabB表有两个字段Id,Col ...
- SharpGL学习笔记(十五) 纹理映射
纹理映射非常实用,在游戏场景中已经无所不在了. 一个较少的多边形构成的模形,配合好的纹理贴图进行映射,可以得到逼真的效果.游戏中的天空,地面,墙面,和植物都是纹理贴图进行映射的. 例如最终幻想8的男女 ...
- uploadify API
apifunctionjavascriptflashsecurity服务器 属性: uploader : uploadify.swf 文件的相对路径,该swf文件是一个带有文字BROWSE的按钮,点击 ...
- IE浏览器中ajax使用缓存数据的问题
今天做了一个小功能:点击鼠标实时更新系统时间,采用ajax,过程很顺利,没遇到啥差错,谷歌,火狐,欧鹏一律通过,怀着忐忑的心情点开了IE8,果然,IE要对得起前端杀手的称号:更新不了时间. 查了一下这 ...