linux命令使用小记2

距离上一次发博客有一段时间了,这段时间其实写了一个shell+expect+python的通过ssh拉取数据的脚本,又用jython调用Java写了一个公司内用的脚本,感觉linux在平时的工作里面越发重要的。
话说回来,linux平时的命令行的使用也有点小成果,在这里和各位分享。

xargs

从当前目录下所有XML文件中查找FOO。find中使用xargs的作用和

类似,不过可以用于别的命令。比如:

删除文件中指定的文件或者目录等等。

Read More

vim recording小试

大家是否有这种经验,“不知道为什么按出recording状态,按ESC貌似无法直接退掉”的情况,个人已经有过好几次了。
与其出来烦人还不如了解它,昨天我就花了点时间学习recording。怎么说,还是有点用的。
首先说明的是recording是怎么按出来的:命令模式下按q。假如你想按退出的:q,右手有点慢的话就有可能出现recording。顺便说一句,q:出来的是command history,command history状态下:q或者enter都可以退出。
那么recording是干啥的?简单来说就是命令序列,加快工作效率的。基本使用是q开启录制,接着选择寄存器,比如1,2,a之类的。之后的到第一个q为止的命令都会加入序列中。录制完成之后@1(1这里为寄存器的名字,你也可以选择其他寄存器)就可以重复寄存器中的命令序列。举个简单的例子:

你需要复制1. 20行,除了Vyo20p(选中行复制,进入下一行,粘帖20次)之外,你可以q1Vyopq录制命令序列,20@1执行20次。
这个例子可能还不能体现recording的好处,接下来举第二个例子,注释10行代码

Read More

linux命令使用小记1

bash的快捷键

现在碰到的服务器上的用户的默认shell都是bash,所以主要讲下bash的一些快捷键。
删除整行命令:Ctrl + u,对不回显的密码输入同样有效
向前删除单个单词:Ctrl + w,在vim里面同样有效
运行最近一条命令:!! 就是两个感叹号,个人是从sbt(scala下的一个构建工具)里面学来的
搜索最近的命令;Ctrl + r,输入关键字,比如你最近输入了vim /path/to/file,那么Ctrl + r,再输入vim,那么就可以显示出这条命令,回车就直接执行了
在搜索最近的命令的基础上,!vim 可以执行最近这条vim的命名。这个用在什么地方最好呢?如果你最近tail了某个文件,输入!tail就可以直接执行tail了,不用输入文件名
清屏命令:Ctrl + l,效果和clear一样
上一条命令和下一条命令:Ctrl + p,Ctrl + n,个人不是很喜欢用上下键,因为要移动右手,而且有些键盘需要按FN才有上下,比如hhkb-pro,不过这个仁者见仁,智者见智
暂停屏幕输出:Ctrl + s,恢复屏幕输入Ctrl + q,这个用来干嘛呢?类似tail时scroll lock
更多bash快捷键,请google

Read More