Linux命令行下”!”的神奇用法
2018-12-05 本文已影响16人
lockdreamer
1.从历史记录中使用命令号来运行命令
这时你可以通过命令history 的输出中的命令序号来执行一条命令。
![](https://img.haomeiwen.com/i14257804/a0f6d93f0ce02542.png)
执行了代码为3的pwd命令
2.执行指定的之前执行过的命令
你可以运行 !-1、!-2 或者 !-7 等命令来执行你记录序列中的倒数第一条命令、倒数第二条命令已经倒数第七条等等。。。和上面的方式一样,你需要先用history命令来列出命令列表。
3.向一条新命令传递旧命令的参数避免重复输入
1、cat rsync.test
!cat
![](https://img.haomeiwen.com/i14257804/ec23136aaf01d547.png)
2、ls /home/zyzx/sinopia
ls -l !$
![](https://img.haomeiwen.com/i14257804/f0647282226c8e29.png)
4.如何用(!)处理两个以上的参数?
例子:创建一个1.log文件,然后cp /home/wltx/1.log /home/wltx/tmp
![](https://img.haomeiwen.com/i14257804/5ea497ae09d81fa7.png)
这样我们就向CP命令传递了两个参数。第一个是/home/wltx/1.log,第二个是/home/wltx/tmp
参数调用:
!^调用第一个参数;!cp:2调用cp的第二个参数,如图
![](https://img.haomeiwen.com/i14257804/5b2bdd9195e7c67b.png)
!* 表示上个命令的所有参数
5.非常实用的 !! 操作符
你可以使用(!!)来运行或者改变之前的命令。它会调用最近使用的命令来调整当前命令。