如何存储形成的命令行而不在 bash 或终端中运行它?

如何存储形成的命令行而不在 bash 或终端中运行它?

例如,我编写了一个很长很复杂的命令,它将改善世界并降低宇宙的熵。但是后来(啊!)我发现我忘了设置必需的目录。我想存储我的命令,运行mkdir然后恢复我的命令。

假设在原始 tty 中执行此操作。

有办法吗?

答案1

在命令行上按Ctrl- (它将其存储在 kill-ring 中),例如u发出另一个,然后按- 。mkdirCtrly

答案2

使用set -o vi命令或set -o emacs(通常为了方便,会将其存储在 .bashrc 中)。这将启用 vi 样式(或 emacs 类型)的行编辑界面。

这为您提供了一个命令行 vi 编辑器。您可以搜索以前的命令、编辑命令等。

例子:

使用ESC键进入vi命令模式,然后

$ /search-string

使用向上和向下键(或jk)列出找到的命令

$ long-command-you-want-to-edit

按下 ESC 键类型vi 然后在 vi 编辑器中编辑长命令。

相关内容