【问题标题】:Changing the previous command in linux [duplicate]在linux中更改上一个命令[重复]
【发布时间】:2011-12-07 12:33:11
【问题描述】:

有没有办法改变linux中以前的命令?我正在使用

复制一堆文件
cp path/to/source1 path/to/target2

我想把它改成

cp path/to/source2 path/to/target2

所以我想用 2 替换 1

我知道我可以将它放在一个循环中,但我需要在我的笔记本中检查一些内容后执行此操作。

【问题讨论】:

  • “更改命令”是什么意思?你能用其他方式解释吗?
  • 你可以使用'read'命令来暂停循环。

标签: linux bash command-line


【解决方案1】:
!!:gs/1/2/

以下是更多示例: http://mark.stosberg.com/Tech/tips/bash.tips

【讨论】:

  • 太棒了!有没有办法更改不是最后一个命令?
  • 不是我所知道的干净的方式,不。
  • afaik 你可以用 !!还有 !-n 其中 n 是您想要的先前行的数量。 !!就是!-1。
【解决方案2】:

操纵历史的命令是:

^old-text^new-text

要阅读更多内容,我可以推荐 bash 的手册页,尤其是。 readline 和 history 的部分。

【讨论】:

  • 谢谢。有没有办法更改不是最后一个命令?此外,此更改仅在旧文本的第一次出现
【解决方案3】:

我想您是在命令行中执行此操作,而不是在 bash 脚本中 最快的方法是写cp和PRESSAlt+.,press space,然后再按Alt+.并修复路径

Alt+. 为您提供您使用的最后一个参数

Ctrl+R 为您提供反向搜索

UP arrow 为您提供最新命令

【讨论】:

    【解决方案4】:

    按向上箭头获取最后一个命令,然后更改任何你想要的不同。

    或者,如果您想解决旧命令,请按“Ctrl-r”,然后开始输入您想要的内容,如果出现正确的旧命令,请按右箭头使其成为当前命令。然后更改您想要更改的任何内容。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-04-22
      • 2012-11-15
      • 2016-12-03
      • 2012-12-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-05-27
      相关资源
      最近更新 更多