linux - 将内容传递给 EDITOR 并在退出后获取结果(例如 git/svn commit)

标签 linux shell command-line

我想编写一个命令行工具,将一些格式化的文本传递给用户在环境中设置的任何编辑器,然后读回内容。

svn commit 和 git commit 等工具如何处理这种行为?是否有执行此操作的标准模式?

最佳答案

嗯,也许…​​…

  • 创建一个包含所需内容的临时文件。
  • 在 $EDITOR 中打开文件。
  • 等到编辑器关闭
  • 检查文件的修改日期
    • 未更改:用户可能已中止编辑过程
    • 改变:使用修改文件的内容
  • 删除临时文件

如果您对其中一项任务有疑问,请随时提问 :)

关于linux - 将内容传递给 EDITOR 并在退出后获取结果(例如 git/svn commit),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2335556/

相关文章:

linux - 将文件从一个目录移动到另一个目录并添加到新目录中的每个文件名

php - 使用 PHP 运行 Debian Bash 脚本

node.js - 在 Node 中调用 child_process.exec 就像在特定文件夹中执行一样

c++ - RUSAGE_THREAD 不起作用,寻找解决方案/替代方案

c++ - 如何在我的终端上隐藏我的输入?

linux - 为什么 arm-linux-gnueabi-g++-4.4 总是构建一个 "7-A"二进制文件?

linux - 如何将十六进制转储从 4 个十六进制数字组转换为 2 个十六进制数字组

bash - Shell 脚本将 PID 作为输入,获取与每个 PID 关联的线程并将其写入文件。有人可以帮助或指导吗?

git - 以编程方式获取 git 中的存储数量

windows - 在 Windows 上运行控制台应用程序时抑制命令窗口