在脚本使用时在 Vim 编辑器中打开配置文件

Opening a Config file in a Vim editor while being used by a script

我有一个关于 Vim 的问题。 所以我有一个 recipients.cfg 配置文件, 它被一个名为 check.sh 的脚本使用,该脚本正在发送一些统计信息(像短信一样发送),并且每分钟通过 cron 运行。

如果我 Vim recipients.cfg 并让它打开大约 10 分钟,check.sh 是否仍然能够使用 recipients.cfg 并发送统计数据?

谢谢!

是的。
Vim 仅创建您正在编辑的文件的隐藏 .swp 文件,用于恢复目的,同时锁定其他 Vim 会话以防止同时写入该文件。

是的,这是安全的,向您展示 how/why 的一个好方法是在 vim 中打开一个文件,写一些文本并用 :w 保存它。现在,更改一些文本但不要保存。打开一个新终端和 cat 文件,以显示内容。您将看到文件的内容是保存时的内容,而不是 vim 实例中当前的内容。如果你键入 ls -a 你会发现一个交换文件 .swp 或者一个 swo 文件等。这是你当前更改的存储位置,同时 vim 打开,并且一旦你写(使用:w) swp 文件中的更改实际上已放入文件中。因此,您的 check.sh 将读取最后写入文件的内容,而不是 vim.

中的内容