返回顶部
首页 > 资讯 > 精选 >操作Bash历史记录的快捷方式有哪些
  • 693
分享到

操作Bash历史记录的快捷方式有哪些

2023-06-16 06:06:05 693人浏览 独家记忆
摘要

这篇文章主要介绍操作Bash历史记录的快捷方式有哪些,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!1、最后一个参数:!$如果你仅想从本文中学习一种快捷方式,那就是这个。它会将最后一个命令的最后一个参数替换到你的命令行

这篇文章主要介绍操作Bash历史记录的快捷方式有哪些,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

1、最后一个参数:!$

如果你仅想从本文中学习一种快捷方式,那就是这个。它会将最后一个命令的最后一个参数替换到你的命令行中。

看看这种情况:

$ mv /path/to/wrongfile /some/other/placemv: cannot stat '/path/to/wrongfile': No such file or directory

啊哈,我在命令中写了错误的文件名 “wrongfile”,我应该用正确的文件名 “rightfile” 代替。

你可以重新键入上一个命令,并用 “rightfile” 完全替换 “wrongfile”。但是,你也可以键入:

$ mv /path/to/rightfile !$mv /path/to/rightfile /some/other/place

这个命令也可以奏效。

在 Bash 中还有其他方法可以通过快捷方式实现相同的目的,但是重用上一个命令的最后一个参数的这种技巧是我最常使用的。

2、第 n 个参数:!:2

是不是干过像这样的事情:

$ tar -cvf afolder afolder.tartar: failed to open

像许多其他人一样,我也经常搞错 tar(和 ln)的参数顺序。

操作Bash历史记录的快捷方式有哪些

xkcd comic

当你搞混了参数,你可以这样:

$ !:0 !:1 !:3 !:2tar -cvf afolder.tar afolder

这样就不会出丑了。

上一个命令的各个参数的索引是从零开始的,并且可以用 !: 之后跟上该索引数字代表各个参数。

显然,你也可以使用它来重用上一个命令中的特定参数,而不是所有参数。

3、全部参数:!:1-$

假设我运行了类似这样的命令:

$ grep '(ping|pong)' afile

参数是正确的。然而,我想在文件中匹配 “ping” 或 “pong”,但我使用的是 grep 而不是 egrep

我开始输入 egrep,但是我不想重新输入其他参数。因此,我可以使用 !:1-$ 快捷方式来调取上一个命令的所有参数,从第二个(记住它们的索引从零开始,因此是 1)到最后一个(由 $ 表示)。

$ egrep !:1-$egrep '(ping|pong)' afileping

你不用必须用 1-$ 选择全部参数;你也可以选择一个子集,例如 1-23-9 (如果上一个命令中有那么多参数的话)。

4、倒数第 n 行的最后一个参数:!-2:$

当我输错之后马上就知道该如何更正我的命令时,上面的快捷键非常有用,但是我经常在原来的命令之后运行别的命令,这意味着上一个命令不再是我所要引用的命令。

例如,还是用之前的 mv 例子,如果我通过 ls 检查文件夹的内容来纠正我的错误:

$ mv /path/to/wrongfile /some/other/placemv: cannot stat '/path/to/wrongfile': No such file or directory$ ls /path/to/rightfile

我就不能再使用 !$ 快捷方式了。

在这些情况下,我可以在 ! 之后插入 -n:(其中 n 是要在历史记录中回溯的命令条数),以从较旧的命令取得最后的参数:

$ mv /path/to/rightfile !-2:$mv /path/to/rightfile /some/other/place

同样,一旦你学会了它,你可能会惊讶于你需要使用它的频率。

5、进入文件夹:!$:h

从表面上看,这个看起来不太有用,但我每天要用它几十次。

想象一下,我运行的命令如下所示:

$ tar -cvf system.tar /etc/system tar: /etc/system: Cannot stat: No such file or directory tar: Error exit delayed from previous errors.

我可能要做的第一件事是转到 /etc 文件夹,查看其中的内容并找出我做错了什么。

我可以通过以下方法来做到这一点:

$ cd !$:hcd /etc

这是说:“获取上一个命令的最后一个参数(/etc/system),并删除其最后的文件名部分,仅保留 / etc。”

6、当前行:!#:1

多年以来,在我最终找到并学会之前,我有时候想知道是否可以在当前行引用一个参数。我多希望我能早早学会这个快捷方式。我经常常使用它制作备份文件:

$ cp /path/to/some/file !#:1.bakcp /path/to/some/file /path/to/some/file.bak

但当我学会之后,它很快就被下面的快捷方式替代了……

7、搜索并替换:!!:gs

这将搜索所引用的命令,并将前两个 / 之间的字符替换为后两个 / 之间的字符。

假设我想告诉别人我的 s 键不起作用,而是输出了 f

$ echo my f key doef not workmy f key doef not work

然后我意识到这里出现的 f 键都是错的。要将所有 f 替换为 s,我可以输入:

$ !!:gs/f /s /echo my s key does not workmy s key does not work

它不只对单个字符起作用。我也可以替换单词或句子:

$ !!:gs/does/did/echo my s key did not workmy s key did not work

测试一下

为了向你展示如何组合这些快捷方式,你知道这些命令片段将输出什么吗?

$ ping !#:0:gs/i/o$ vi /tmp/!:0.txt$ ls !$:h$ cd !-2:$:h$ touch !$!-3:$ !! !$.txt$ cat !:1-$

以上是“操作Bash历史记录的快捷方式有哪些”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注编程网精选频道!

--结束END--

本文标题: 操作Bash历史记录的快捷方式有哪些

本文链接: https://lsjlt.com/news/282561.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 操作Bash历史记录的快捷方式有哪些
    这篇文章主要介绍操作Bash历史记录的快捷方式有哪些,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!1、最后一个参数:!$如果你仅想从本文中学习一种快捷方式,那就是这个。它会将最后一个命令的最后一个参数替换到你的命令行...
    99+
    2023-06-16
  • VSCode的快捷方式有哪些
    这篇文章主要介绍“VSCode的快捷方式有哪些”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“VSCode的快捷方式有哪些”文章能帮助大家解决问题。一、快捷导航1. 搜索文件当需要搜索特定的文件,当项...
    99+
    2023-06-29
  • phpstorm快捷方式有哪些
    这篇文章主要介绍了phpstorm快捷方式有哪些,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。常用快捷键 设置快捷键:File -...
    99+
    2024-04-02
  • Windows11快捷方式有哪些
    这篇文章主要介绍“Windows11快捷方式有哪些”,在日常操作中,相信很多人在Windows11快捷方式有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Windows1...
    99+
    2023-04-22
    windows11
  • linux中Bash的快捷键有哪些
    这篇文章主要为大家展示了“linux中Bash的快捷键有哪些”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“linux中Bash的快捷键有哪些”这篇文章吧。快捷键Bash准备了大量的快捷键为用户使...
    99+
    2023-06-27
  • Linux下如何查看mysql的历史操作记录
    这篇文章主要介绍了Linux下如何查看mysql的历史操作记录,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。 在linux下,mysql的...
    99+
    2024-04-02
  • 常用的linux Bash快捷键有哪些
    这篇文章主要为大家展示了“常用的linux Bash快捷键有哪些”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“常用的linux Bash快捷键有哪些”这篇文章吧。熟悉 Bash 快捷键来提高效率...
    99+
    2023-06-25
  • Vim的命令、操作方法和快捷键有哪些
    这篇文章主要讲解了“Vim的命令、操作方法和快捷键有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Vim的命令、操作方法和快捷键有哪些”吧!命令历史以:和/开头的命令都有历史纪录,可以首...
    99+
    2023-06-28
  • 如何查看Oracle数据库的操作历史记录
    查看操作历史记录的方法:1、使用Oracle内置的审计功能,可以记录数据库中发生的各种操作,包括登录、DDL语句、DML语句等;2、使用Oracle日志文件,其中包含了数据库中发生的各种操作,可以通过查看日志文件来获取操作历史记录;3、使用...
    99+
    2023-10-22
    oracle
  • Win8 IE浏览器如何查看历史记录有哪些方法
      使用IE浏览器上网是国内多数网民的一个习惯。IE浏览器的众多功能中,查看历史记录是其中较为实用的一个。下面小编以Win8系统为例,告诉大家查看IE浏览器历史记录的两个方法。   方法一   点击五角星按...
    99+
    2022-06-04
    历史记录 浏览器 方法
  • Jupyter Notebook快捷键方式有哪些
    这篇文章主要介绍了Jupyter Notebook快捷键方式有哪些,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。快捷键方式使用快捷方式可以节...
    99+
    2024-04-02
  • Axuer移动快捷方式有哪些
    这篇文章主要介绍“Axuer移动快捷方式有哪些”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Axuer移动快捷方式有哪些”文章能帮助大家解决问题。Axuer移动快捷方式前言:在工作中熟练的使用快捷键...
    99+
    2023-07-04
  • 常用电脑操作快捷键有哪些
    这篇文章给大家分享的是有关常用电脑操作快捷键有哪些的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。  1.隐私初级保护:  一秒切换到桌面:Windows键+D键当我们在电脑上浏览...
    99+
    2024-04-02
  • Linux/Unix下Shell快捷键操作有哪些
    小编给大家分享一下Linux/Unix下Shell快捷键操作有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!有时候,我们需要在 Bash 中重复执行先前的命令...
    99+
    2023-06-16
  • Linux中CLI操作常用快捷键有哪些
    这篇文章主要为大家展示了“Linux中CLI操作常用快捷键有哪些”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Linux中CLI操作常用快捷键有哪些”这篇文章吧。如下所示:快捷键作用ctrl +...
    99+
    2023-06-09
  • linux中命令行操作快捷键有哪些
    这篇文章给大家分享的是有关linux中命令行操作快捷键有哪些的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。历史相关命令 !!:执行上一条命令!num:执行历史命令中第num条命令!-num:执行历史命令中倒数第n...
    99+
    2023-06-09
  • 删除Git历史的方法有哪些
    本篇内容主要讲解“删除Git历史的方法有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“删除Git历史的方法有哪些”吧!删除某个commit如果你想要删除Git历史中的某个特定commit,可...
    99+
    2023-07-05
  • Linux中的常见错误和快捷操作有哪些
    本篇文章为大家展示了Linux中的常见错误和快捷操作有哪些,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。Linux下命令的一些异常情况命令不全:在命令没有输入完 (引号或括号没有配对),就不小心按下...
    99+
    2023-06-28
  • 在powerdesigner使用实体的快捷方式有哪些
    这篇文章将为大家详细讲解有关在powerdesigner使用实体的快捷方式有哪些,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。 ctrl+V ...
    99+
    2024-04-02
  • 提升效率的Linux终端快捷操作分别有哪些
    这篇文章给大家介绍提升效率的Linux终端快捷操作分别有哪些,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。很多普通 Linux 桌面用户都对使用终端感到排斥和恐惧,其实它没大家想的那么复杂,很多常见操作都可以直接在终端...
    99+
    2023-06-13
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作