首页 > 代码库 > shell总结(转)

shell总结(转)

1) !!:重复执行上一条指令

2) !a:重复执行上一条以a为首的指令

3) !number:重复执行上一条在history表中记录号码为number的指令

4) !-number:重复执行前第number条指令

5) !$:表示获得上一条命令中的最后一项内容

6) 用Ctrl + r 组合键来进入历史搜索模式在history表中查询某条过往指令,找到需要重复执行的命令后,按回车键即可重复命令参数(即上一点中的第5条)

先来看一个例子: mkdir /exampledircd !$

本例中,第一行命令将创建一个目录,而第二行的命令则转到刚创建的目录。

这里,“!$”的作用就是重复前一个命令的参数。

事实上,不仅是命令的参数可以重复,命令的选项同样可以。

另外,Esc + . 快捷键可以切换这些命令参数或选项。

用于编辑的快捷键Ctrl + a:

将光标定位到命令的开头Ctrl + e:

与上一个快捷键相反,将光标定位到命令的结尾Ctrl + u:

剪切光标之前的内容Ctrl + k:

与上一个快捷键相反,剪切光标之后的内容Ctrl + y:

粘贴Ctrl + u和Ctrl + k所剪切的内容Ctrl + t:

交换光标之前两个字符的顺序Ctrl + w:

删除光标左边的参数(选项)或内容Ctrl + l:

清屏Ctrl + d:输入已结束。

在shell下相当于一个exitCtrl + c:键盘中断请求。

Ctrl + s &Ctrl + q:

暂停/恢复屏幕输出Ctrl + n(↓):

显示下一条命令Ctrl + p(↑):

显示上一条命令Ctrl + b:

向回移动Ctrl + f:

向前移动Ctrl + shift +↓:

终端向下滚动Ctrl + shift +↑:

终端向上滚动Shift+pgup/pgdown:

终端上下翻页滚动处理作业

首先,使用 Ctrl + z 快捷键可以让正在执行的命令挂起。如果要让该进程在后台执行,那么可以执行 bg 命令。而 fg 命令则可以让该进程重新回到前台来。

使用 jobs 命令能够查看到哪些进程在后台执行。

你也可以在 fg 或 bg 命令中使用作业 id,

如: fg %3

又如: bg %7使用置换命令置换

先看例子: du -h -a -c $(find . -name *.conf 2>&-)

注意 $() 中的部分,这将告诉 Bash 运行 find 命令,然后把返回的结果作为 du 的参数。

进程置换

仍然先看例子: diff <(ps axo comm) <(sshuser@host ps axo comm)

该命令将比较本地系统和远程系统中正在运行的进程。

请注意 <() 中的部分。

xargs 看例:

find . -name *.conf -print0 | xargs -0 grep -l -Z mem_limit | xargs -0 -i cp {}

{}.bak 该命令将备份当前目录中的所有 .conf 文件。

使用管道

下面是一个简单的使用管道的例子:

ps aux | grep init 这里,

“|”操作符将 ps aux 的输出重定向给 grep init。

下面还有两个稍微复杂点的例子:

ps aux | tee filename | grep init 及: ps aux | tee -a filename | grep init将标准输出保存为文件 你可以将命令的标准输出内容保存到一个文件中,

举例如下: ps aux >filename 注意其中的“>”符号。

你也可以将这些输出内容追加到一个已存在的文件中: ps aux 》 filename

你还可以分割一个较长的行: command1 | command2 | … | commandN >tempfile1 cat tempfile1 | command1 | command2 | … | commandN >

重定向与组合

重定向流的例子: ps aux 2>&1 | grep init

这里的数字代表:0:stdin1:stdout2:sterr 上面的命令中,“grep init”不仅搜索“ps aux”的标准输出,而且搜索 sterr 输出。

你也可以将这些输出内容追加到一个已存在的文件中: ps aux 》 filename

你还可以分割一个较长的行: command1 | command2 | … | commandN >tempfile1 cat tempfile1 | command1 | command2 | … | commandN >

Ubuntu中的一些常用的快捷键:

窗口管理Win+E 显示所有桌面,方便的左右选择。

Ctrl + Alt + → / ← 在不同工作台间切换

Ctrl + Alt + Shift + → / ← 移动当前窗口到不同工作台

Alt + Shift+ ↑ 以很酷的方式显示当前窗口

Ctrl + Alt + D 显示桌面/恢复当前窗口

Alt+ Tab 切换窗口

Alt + F4 关闭窗口

Alt + F5 取消最大化窗口 (恢复窗口原来的大小)

Alt + F7 移动窗口 (注: 在窗口最大化的状态下无效)

Alt + F8 改变窗口大小 (注: 在窗口最大化的状态下无效)

Alt + F9 最小化窗口

Alt + F10 最大化窗口

Alt + Space 打开窗口的控制菜单 (点击窗口左上角图标出现的菜单)

Ctrl+Alt+F7 返回桌面

文件浏览器NautilusShift+Ctrl+N 新建文件夹, 很有用

Alt + Enter 查看选择文件/文件夹的属性,代替单击右键选择属性

Ctrl + 1/2 改变文件夹视图查看方式,图标视图/列表视图

Ctrl + W 关闭当前Nautilus标签

Ctrl + Shift + W 关闭所有Nautilus标签

Ctrl+T 在Nautilus中新建一个标签

Ctrl+Page Up 上一个标签

Ctrl+Page Down 下一个标签

Alt + ↑/↓ 移动到父文件夹/选择的文件夹

Alt + → / ← 后退/前进

Alt + Home 直接移动到主文件夹

Alt+N 切换到第N个标签(N为数字)

F9 开关显示隐藏Nautilus侧边栏

Ctrl + H 开关显示隐藏文件夹