10个你可能没用过的Linux命令
对铁杆系统管理员或Linux工程师来说,下面这些Linux命令行技巧也许多数觉得眼熟。而对Linux普通用户而言,这些Linux命令行技巧则不见得用过。
1. 使用pgrep快速查找PID
pgrep
会遍历当前运行的进程,列出符合查找条件的进程ID。
<code>pgrep ssh</code>
这条命令会列出所有与ssh有关的进程ID。
2. 执行上次执行过的命令
这个标题有些绕口,但下面这条命令的确能做到这一点。
<code>!!</code>
该命令会执行你在命令行中执行过的上一条命令。
3. 执行最近一次以特定字母开头的命令
如欲执行命令行历史中一个s开头的命令,可以使用如下命令:
<code>!s</code>
该命令会执行最近一次在命令行中用过的且以字母s开头的命令。
4. 反复执行一个命令并在屏幕上输出
watch
会反复执行一个命令,并在屏幕上打印输出。你可以借此观察一段时间内程序的输出变化。程序(即示例中的ls -l
)默认每2秒运行一次。watch
命令与tail
命令非常相似。
<code>watch -d ls -l</code>
这条命令会监视当前目录,如有文件增删或修改,就会高亮显示目录变化。
5. 在VI/VIM中快速保存
要忙着办其他事情时,可以使用Shift + zz
(即按住换档键,敲两下z
键)快速退出vi
插入模式。
6. 快速退出终端会话
使用CTRL+D
可以快速退出终端会话。
7. 返回上一次所在的目录
使用命令cd -
可以返回上一次所在的目录:
8. 巧妙创建父目录
命令mkdir -p /home/adam/make/all/of/these/directories/
会根据需要创建不存在的目录。何苦要浪费时间做这种傻事呢:mkdir make ; cd make ; mkdir all ; cd all ; mkdir of ; cd of
… 切中要害,使用mkdir -p
!
9. 删除一整行
输入了一长串命令但又不想要了,可以使用CTRL+U
删除这一整行。(译注:光标不在行尾时,可以先用CTRL+E
定位到行尾。)
10. 设定文件的时间戳
命令touch -c -t 0801010800 filename.c
会将文件的时间戳设定为2008-01-01 8:00
,格式为(YYMMDDhhmm)。