我写了一个脚本,可以打开我工作期间需要的几个文本文件(例如期刊等)。脚本如下所示:
#! /bin/bash
DOCPATH=$HOME/Documents
NUMDOCPATH=$DOCPATH/Numerics
emacs $DOCPATH/UTA_WorkProtocol.txt &
emacs $NUMDOCPATH/NumProtocol.txt &
emacs $NUMDOCPATH/CITCOM/Protocol.txt &
工作正常,文件已正确打开。但是,最后我想创建另一个脚本来再次保存和关闭这些文件。但是,我一直无法找到任何命令来保存和/或关闭使用 bash 脚本在后台运行的打开的 emacs 文件。我会更方便地运行这样的脚本,而不是在每个 txt 文件中执行 C-X C-s,因为我也可能将新文件添加到“打开”脚本中。
请有经验的人帮我解决一下。谢谢!
最佳答案
这有点hack,但是bash
脚本并不真正适合这种类型的 UI 脚本。
#! /bin/bash
DOCPATH=$HOME/Documents
NUMDOCPATH=$DOCPATH/Numerics
emacs $DOCPATH/UTA_WorkProtocol.txt &
emacs $NUMDOCPATH/NumProtocol.txt &
emacs $NUMDOCPATH/CITCOM/Protocol.txt &
emacs # *Not* in the background
kill $(jobs -p)
当您准备好关闭所有后台的 emacs 实例时,只需关闭前台的那个即可。这将导致最终的 emacs
退出,这将允许脚本继续到 kill
命令,这将终止剩余的后台作业。
注意最后的 emacs
可以是阻止脚本完成并且可以很容易地自行终止的任何命令。
关于linux - 在 bash 脚本中使用 emacs 打开和关闭 txt 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39777323/