将历史记录转换为脚本?

将历史记录转换为脚本?

很多时候,当我意识到我要继续输入并且我真的很想要一个脚本时,我会输入一堆命令。

现在我明白,无论我如何保存我的历史记录,我都必须对其进行编辑以清理内容,但希望听到有关如何保存我的历史记录的建议,以便它接近可用的脚本。

答案1

我处理这个问题的方式是:

history -a- 在历史文件中添加新行

ctrl-x, ctrl-e- 打开一个编辑器来制作一个快速脚本(对于我来说,在 vi 中)

:r ~/.bash_history | tail -n 20- 从历史文件中读取最后 20 个命令。

答案2

如果您history在 shell 中键入,您将看到最近命令的列表。您可以通过或其他方式将其查看到脚本history > my_script(或者只是从 ~/.bash_history 文件中复制它)。

从 my_script 文件中,您可以删除不必要的命令,添加 shebang 行(通常为 )#!/bin/bash,然后使其可执行chmod +x my_script,然后就完成了。

答案3

bash oneliner 方法:

history | tail -20 |cut -c 8- > newscript.txt;  chmod 777 newscript.txt    

如果添加 shebang,则可以将其设为脚本。

答案4

另一种方法可能是使用带有宏语言的编辑器。

  • 通过剪切和粘贴导入一堆线条
  • 通过 grapping 过滤命令的输出
  • 删除行首的提示
  • 在文件开头插入 shebang

在大多数情况下,重要的提示将有助于完成这项工作。对于超过几个屏幕页面的会话大小,它不会很舒服。

相关内容