基础的Linux Shell技巧小结

 更新时间:2015年07月09日 09:23:24   投稿:goldensun  
这篇文章主要介绍了基础的Linux Shell技巧小结,是Linux入门学习中的基础知识,需要的朋友可以参考下

一、自动补齐:[Tab]

这个技巧很多人都应该会了,就是当输入命令,目录或者是文件名的时候按 [Tab] 键。系统就会帮你补齐可能要输入的东西,如果有多个选择系统会列表出来。你可以看清楚之后再多输入一个或多个 charactor ,再按[Tab]。

实验:

$ ec

按[Tab], 补齐为:

$ echo


二、查找和执行历史命令:[Ctrl + r], [Ctrl + p], [Ctrl + n]

在终端中按捉 [Ctrl] 键的同时 [r] 键,出现提示:(reverse-i-search), 此时你尝试一下输入你以前输入过的命令,当你每输入一个字符的时候,终端都会滚动显示你的历史命令。当显示到你想找的合适的历史命令的时候,直接 [Enter],就执行了历史命令。

另外, [Ctrl + p] 或 [Ctrl + n] 快速向前或向后滚动查找一个历史命令,对于快速提取刚刚执行过不久的命令很有用。

实验:

$ echo "hello, world" [Enter]

$ hello, world

[Ctrl + r ] (接着输入 echo)

(reverse-i-search)`ch': echo "hello,world" [Enter]
$hello,world


三、取消本次命令输入:[Ctrl + c]

这个快捷键可以使你从一个可能你已经厌烦了的命令中安全地退出!!也许是个不值一提的小技巧,但是经验告诉我它很有用。很多 Unix 初学者会习惯性地按 [Enter] 以摆脱困境,但是说不定就会发生灾难性的事件,譬如删除了一个重要的配置文件:(


四、光标跳转快捷键:

为了方便大家记忆,加点英语助记语在后面 :)
[Ctrl + a] 跳转至命令行首    Ahead of line
[Ctrl + e] 跳转至命令行尾    End of line[Ctrl + f] 向前跳转一个字符  jump Forward one character
[Ctrl + b] 向后跳转一个字符  jump Backward one character

[Alt + f] 向前跳转到下一个字的第一个字符
[Alt + b] 向后跳转到下一个字的第一个字符


五、编辑命令的快捷键:
[Ctrl + w] 向后删除一个字,用来对付刚刚输入的错误字很有用[Ctrl + u] 从光标当前位置删除所有字符至行首
[Ctrl + k] 从光标当前位置删除所有字符至行尾

[Ctrl + d] 删除光标当前位置的字符

[Ctrl + y] 粘贴最后一个被删除的字

[Alt + d] 删除从光标当前位置,到当前字的结尾字符


六、配置提示;

如果你是用 Gnome 下的终端窗口 gnome-teminal ,上面的 Gnu Shell 快捷键会跟 Gnome 的窗口快捷键有冲突。

那么你需要做如下配置:

在 gnome-terminal 的菜单栏中选 "Edit" -] "Keyboard Shortcuts ..."打开 "Keyboard Shortcuts" 对话框,并勾选下面两个复选项

"Disable all menu access keys (such as Alt+f to open File menu)"
"Disable menu shortcut key (F10 by default)"

至于 KDE 下应该怎么配 KDE 的终端窗口,请熟悉 KDE 的朋友补充一下,我很久没用 KDE 了,也没装。


七、综合练习;

上面列举的快捷键,练习2~3天应该就能熟练,为了大家快速理解和记忆,我们来做个小小的综合练习:

第一步:echo

$ echo "hello, world." [Enter]

我们先输入 echo "hello, world" 这个命令,然后回车,也就看到了终端的输出:

$ hello, world.

第二步:[Ctrl + r]

我们试试找出历史命令 echo "hello, world.",这时,我们按[e],[c],[h]这三个键,这个历史命令大概已经找到了,
终端的显示应该是这样:

(reverse-i-search)`ech': echo "hello,world."

现在,如果[Enter]就会再一次执行这个命令,但我们现在来练习一下命令行的编辑。

第三步:[Ctrl + a]

这样,我们就取出了历史命令 echo "hello, world.",并且将光标定位到行首,此时,光标应该在 echo 命令的 e 字符上高亮。
终端的显示应该是这样:

$ echo "hello,world"


第四步:[Alt + d]

删除了命令 echo, 并且光标仍然在行首,终端显示为:

$ "hello, world."


第五步:输入命令 "printf"

我们尝试一下用 Posix 的系统调用 printf 来替代 shell 命令 echo,输入[p][r][i][n][t][f],此时终端显示为:

$ printf "hello, world."

并且光标在 f 字符后面高亮。

第六步:[Ctrl + e]

光标跳转到命令行尾部。

第七步:[Ctrl + b]

光标后退一个字符,此时光标应处于后双引号 " 处高亮。

第八步:输入换行转义符 "n"

输入[][n] ,此时的终端显示应该为:

$ printf "hello, world.n"

可以[Enter]执行了。

相关文章

  • linux查看磁盘空间的命令详解

    linux查看磁盘空间的命令详解

    本篇文章主要给大家介绍了linux查看磁盘空间的两个命令,文中通过代码示例给大家介绍的非常详细,对大家的学习或工作有一定大帮助,需要的朋友可以参考下
    2023-12-12
  • 101个shell脚本 猜数字游戏代码

    101个shell脚本 猜数字游戏代码

    原本书上这个例子是教调试脚本的,它故意给出的脚本中有几个错误,教我们认识系统提示的错误,并修改运行。但比较难写出来,所以把修改好了的脚本放上来,这个脚本比较有趣味的
    2016-08-08
  • 详解Linux查找目录下的按时间过滤的文件

    详解Linux查找目录下的按时间过滤的文件

    这篇文章主要介绍了Linux查找目录下的按时间过滤的文件 ,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-05-05
  • Linux Shell脚本中获取本机ip地址方法

    Linux Shell脚本中获取本机ip地址方法

    这篇文章主要介绍了Linux Shell脚本中获取本机ip地址方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-10-10
  • shell中函数的应用

    shell中函数的应用

    今天这个脚本其实很简单,但很实用,讲的是shell中函数的应用,需要的朋友可以参考下
    2016-08-08
  • Linux下使用Shell脚本实现进程监控的流程

    Linux下使用Shell脚本实现进程监控的流程

    这篇文章主要介绍了Linux下使用Shell脚本实现进程监控,在 Linux 平台下,shell 脚本监控是一个非常简单、方便的工具,它可以有效的对服务器、进程进行监控,对系统开发以及进程维护人员非常有帮助,需要的朋友可以参考下
    2023-02-02
  • Shell脚本实现精准清除Squid缓存

    Shell脚本实现精准清除Squid缓存

    这篇文章主要介绍了Shell脚本实现精准清除Squid缓存,本文脚本是张宴同学脚本的个人优化版,生产环境使用效果不错,所以分享给大家,需要的朋友可以参考下
    2015-01-01
  • Linux查找处理文件名后包含空格的文件(两种方法)

    Linux查找处理文件名后包含空格的文件(两种方法)

    在linux中如何查找处理文件名后包含空格的文件呢?怎么批量替换处理这些空格呢?下面小编给大家带来了两种方法,需要的朋友参考下吧
    2017-11-11
  • Linux下shell基本命令之grep用法及示例小结

    Linux下shell基本命令之grep用法及示例小结

    grep是Unix/Linux系统中用于文本搜索的强大工具,它可以忽略大小写、显示行号、反向选择、递归搜索目录等,本文就来介绍一下,感兴趣的可以了解一下
    2024-12-12
  • 详解Shell编程之变量数值计算(二)

    详解Shell编程之变量数值计算(二)

    本篇文章主要介绍了详解Shell编程之变量数值计算(二),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-02-02

最新评论