我即将编写一个 shell 脚本来编辑一些文件。
我这样做是这样的:
/usr/bin/vim $file
现在我想问一下vim的退出状态。如果用户关闭并保存了更改,则执行某些操作(:wq 或 :x),或者如果没有更改而关闭(:q, :q!),请执行其他操作
if [ vi-exit-status=wq ] ; then
# do this
else # vi didn't save anything
# do that
fi
我怎样才能做到这一点?当我调用 vi 来创建一个新文件并退出它而不保存(:q!)然后我通过检查状态
echo $?
答案是 0。如果我通过 vi/vim 保存某些内容或创建文件,它也是 0。
亲切的问候