linux - 如何配置 vim 以保存额外的副本

标签 linux vim backup

有没有办法配置 vim,而不是创建一个临时的 .swp,每次保存时,假设我正在编辑文件 name_of_the_file.txt,程序会自动创建一个包含先前保存的文件,以保存的数据和时间命名,例如name_of_the_file-05-17-2017-11:20.txt 在一个文件夹中,比如说 ~/.vim-bckp/name_of_the_file/?或者,更好的是,有一个自定义的保存命令来执行上述请求,并避免用微小的更改淹没 HDD。

最佳答案

这个脚本可以解决问题。你可以将它命名为 vimBackup 或任何东西,不要使用现有的命令名称。然后,您可以将命令复制到 $PATH 变量的路径中的某处,或者将 $PATH 变量附加到包含此脚本的自定义脚本文件夹中。然后您就可以使用它而无需使用完整路径来执行它。

#!/bin/sh

[[ $1 == "" ]] && echo "Command expect a file path" && exit 1
[[ ! $# == 1 ]] && echo "Command expect only one parameter" && exit 1
[[ -w $1 ]] && cp $1 $1_$(date +%Y-%m-%d_%H:%M) # if exist and writable make a copy
vim $1

关于linux - 如何配置 vim 以保存额外的副本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44027561/

相关文章:

PHP shell_exec() - 直接运行,或执行 cron (bash/php) 并包含 MySQL 层?

c - c中的多线程套接字上下文切换

linux - 如何使用SshClient将内容写入Linux SFTP服务器上的文件?

sql-server - 在 mssql docker 容器中获取 root 访问权限

vim - Vim 中类似 Emacs 的滚动

VIM:我怎么知道关键字使用了哪个突出显示规则?

sql-server - 如何从Azure VM下载100Gb文件?

vim - 通过 putty 在 vi​​m 中 <C-PageUp>

mysql - 备份失效的 MySQL 服务器

svn - 在没有管理员权限的情况下如何备份远程 SVN 存储库?