LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
12
返回列表 发新帖
楼主: konds

bash快捷键盘使用心得,非转载~~~ 与[Shell环境使用技巧]合并

[复制链接]
发表于 2004-6-30 21:12:48 | 显示全部楼层
最初由 edwardhayes 发表
鼠标的可以嘛?
用三键带滚轮的鼠标的中间滚轮可以复制bash的文本。

那是xterm的功劳。
凡是符合X标准的应用程序,都可以使用鼠标中键在程序间实现复制内容共享。
这张贴很不完整。关于更详细的内容,请参阅旧帖:
Shell的命令行编辑[vi&emacs命令行技巧征集]
http://www.linuxsir.cn/forum.php?mod=viewthread&tid=98949
设置命令提示符下的热键[转]
http://www.linuxsir.cn/forum.php?mod=viewthread&tid=121177
发表于 2005-1-12 14:40:22 | 显示全部楼层

Shell环境使用技巧(有待不断扩容)

不断扩充中,其实还有很多没有发现。

查看输出
Shift + PageUP
Shift + PageDown
Shift + 方向:上
Shift + 方向:下

命令行的历史记录

通过按向上方向键,您可以向后遍历近来在该控制台下输入的命令。用向下方向键可以向前遍历。与 SHIFT 键连用的话,您还可以遍历以往在该控制台中的输出。您也可以编辑旧的命令,然后再运行。

按 <CTRL r> 后,shell 就进入"reverse-i(ncremental)-search"(向后增量搜索)模式。现在输入您要找的命令的首字母:

(reverse-i-search)`':. 敲入 'i'可能会变成:

(reverse-i-search)`i': isdnctrl hangup ippp0

按 <CTRL s> 后,shell 就进入"i(ncremental)-search"(向后增量搜索)模式。现在输入您要找的命令的首字母:

(i-search)`':. 敲入 'i'可能会变成:

(i-search)`i': isdnctrl hangup ippp0

如果您再按 <ENTER> 键,上面的命令将再次执行。而如果您按了向右、向左方向键或 <ESC> ,上面的命令将回到普通的命令行,这样您就可以进行适当编辑。

命令history,显示保存下来的输入的命令

!COMMAND,执行最近一次COMMAND字串的命令

!!重复执行上一此命令

编辑命令行

通过光标和功能键(Home、End等键),您可以浏览并编辑命令行,如果您需要,还可以用键盘的快捷方式来完成一般的编辑:
<CTRL l>:clear,清屏
<CTRL h>:同<退格>
<CTRL d>:同<delete>
<CTRL f>:同<方向键:左>
<CTRL b>:同<方向键:右>
<CTRL p>:同<方向键:上>
<CTRL n>:同<方向键:下>
<CTRL o>:同<回车>
<CTRL k>:删除从光标到行尾的部分
<CTRL u>:删除从光标到行首的部分
<ALT d >:删除从光标到当前单词结尾的部分
<CTRL w>:删除从光标到当前单词开头的部分
<CTRL a>:将光标移到行首
<CTRL e>:将光标移到行尾
<ALT a >:将光标移到当前单词头部
<ALT e >:将光标移到当前单词尾部
<CTRL y>:插入最近删除的单词
<!$>:重复前一个命令最后的参数。

例如:您用命令 mkdir peter/pan/documents/tinkerbell 新建了一个目录,现在您向用命令'cd'进入该目录,您可以用 cd !$,shell 将把前一个命令'mkdir'的参数添加到现在的'cd'后面。
发表于 2005-1-12 14:45:39 | 显示全部楼层
收下了.
发表于 2005-1-13 00:11:56 | 显示全部楼层
内容属于同一范畴,主题合并。
发表于 2005-1-13 09:13:26 | 显示全部楼层
我也来:
alt+u:大写从光标开始的一个单词。
alt+c:大写光标处的一个字符并将光标移到下一个空白处。
发表于 2005-1-17 13:34:58 | 显示全部楼层
好    .
回复 支持 反对

使用道具 举报

发表于 2005-1-27 16:17:37 | 显示全部楼层
Post by baif
不断扩充中,其实还有很多没有发现。。。


:cool:

Subtitution commands and operators

Symbol
Meaning
Example
Effect
-
!            
Specify which part of command to subtitution !cat           
Redo last cat command
-
!!
Redo previous command
!! > file
Redo last command and send output tu file
-
!n Substitute event n from history
!3
Go to the 3nd command
-
!-n
Substitute last command begining with command
!flie > tmp
Redo the last find command and send output to temp
-
:
Introduce argument specifies
date > !:3
Run the date and send output to third file from last command
-
*
Substitute all argument
cat !ls:*
cat files listed as arguments to last ls command
-
$
Substitute last argument
mv ! nowdir
Move Last file from previous commands to newdir
-
n
Substitute nth argument
rm !:4 !:6
Rm 4th and 6th files named in last command
-
s/abc/def/
Switch abc to def
!cat:s/kron/korn/
Redo last cat command, changing kron to korn
-
^abc^def
Run last command and change abc to def
^oldfile^old-file
Redo previous command, changing oldfile to old-file
回复 支持 反对

使用道具 举报

发表于 2005-1-27 16:21:02 | 显示全部楼层
BTW: I hate smoking....
回复 支持 反对

使用道具 举报

发表于 2005-1-27 16:50:19 | 显示全部楼层
Post by baif
BTW: I hate smoking....

btw:i like xiangyan ;)
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表