例如,如果您曾经使用过git,那么当您进行提交时,它会打开vi来添加或编辑某些文本,当您退出时,它可以拦截它并使用该文本。这叫什么,所以我可以在上面查找一些文档?任何其他信息,特别是使用python执行此操作,将非常有用。
答案 0 :(得分:5)
通常,用户的$EDITOR
环境变量被执行,并被指示写一个带有随机名称的临时文件。然后,您的应用程序可以读回临时文件,并在不再需要时将其丢弃。
# Your application makes a system call like:
$EDITOR /tmp/randfile1124098weasc9839x.txt
这允许文本编辑器成为用户首选项。 $EDITOR
可以是/usr/bin/vi
,/usr/bin/emacs
,无论如何。
答案 1 :(得分:4)
以下是使用Python执行此操作的方法:
import tempfile, os
f = tempfile.NamedTemporaryFile()
os.system("vi " + f.name) # this will open vi to edit your temporary file
text = f.read()
答案 2 :(得分:2)
您所做的只是对临时目录中的文件进行系统调用。系统调用返回时,读取文件。