怎样在Linux中用Vim对文件进行密码保护

Vim 是一种流行的、功能丰富的和高度可扩展的 Linux 文本编辑器,它的一个特殊功能便是支持用带密码各种的加密方法来加密文本文件。

本文中,我们将向你介绍一种简单的 Vim 使用技巧:在 Linux 中使用 Vim 对文件进行密码保护。我们将向你展示如何让一个文件在它创建的时侯以及为了修改目的而被打开了之后获得安全防护。

建议阅读: 你应该在 Linux 中使用 Vim 编辑器的 7 个原因

要安装 Vim 完整版,只需运行这些命令:


  1. $ sudo apt install vim          #Debian/Ubuntu 系统 
  2. $ sudo yum install vim          #RHEL/CentOS 系统  
  3. $ sudo dnf install vim      #Fedora 22+ 

参阅: 十年后 Vim 8.0 发布了 – 在 Linux 上安装

怎样在 Linux 中用 Vim 对文件进行密码保护

Vim 有个 -x 选项,这个选项能让你在创建文件时用它来加密。一旦你运行下面的 vim 命令,你会被提示输入一个密钥:


  1. $ vim -x file.txt 
  2. 警告:正在使用弱加密方法;参见 :help 'cm' 
  3. 输入加密密钥:******* 
  4. 再次输入相同密钥:******* 

如果第二次输入的密钥无误,你就能可以修改此文件了。

被密码保护的 Vim 文件

等你修改好之后,摁 Esc 和键入 :wq 来保存及关闭文件。下次你想打开它编辑一下,你就必须像这样去输入密钥:

$ vim file.txt需要 "file.txt" 的加密密钥警告:正在使用弱加密方法;参见 :help 'cm'输入密钥:*******

假设你输了一个错误的密码(或者没输密码),你会看到一些垃圾字符。

Vim 中的加密内容

在 Vim 中设置一种强加密方法

注意:警告信息暗示保护文件的是弱加密方法。那么接下来,我们来看看怎么在 Vim 中设置一种强加密方法。

Vim 中文件弱加密

为了查看加密方式(cm)集,键入如下:


  1. :help 'cm' 

输出样例:


  1.                                         *'cryptmethod'* *'cm'* 
  2. thod'       string  (默认 "zip") 
  3.                     全局或本地到缓冲区 |global-local| 
  4.                     {not in Vi} 
  5. 当缓冲区写进文件中所用的加密方式: 
  6.                                         *pkzip* 
  7.     zip             PkZip 兼容方式。  一种弱加密方法。 
  8.                     与 Vim 7.2 及更老版本后向兼容。 
  9.                                         *blowfish* 
  10.     blowfish        河豚加密方式。  中级强度加密方法但有实现上 
  11.                     的瑕疵。需要 Vim 7.3 及以上版本,用它加密的文件不 
  12.                     能被 Vim 7.2 及更老版本读取。它会添加一个 “种子”, 
  13.                     每次你当你写入文件时,这个加密字节都不同。 

你可以像如下所示的那样给一个 Vim 文件设置个新的加密方法(本例中我们用 blowfish2 加密方法)


  1. :setlocal cm=blowfish2 

然后键入回车和 :wq 保存文件。

对 Vim 文件设置强加密

现在你再打开下面的文件时应该就看不到那条警告信息了。


  1. $ vim file.txt 
  2. 需要 "file.txt" 的加密密钥 
  3. 输入加密密钥:******* 

你也可以在打开 Vim 文件之后来设置密码,用 :X 命令就能像上面所示的那样去设置一个加密密码。

作者:Aaron Kili

来源:51CTO

时间: 2025-01-26 22:08:40

怎样在Linux中用Vim对文件进行密码保护的相关文章

linux下vim多文件查找与替换教程

在linux平台上,有很多优秀的shell命令组合来做多文件查找/替换,比如这些命令:find,sed,grep,awk,perl.但其他平台比如windows上就没那么方便了,这时候vim内置的多文件查找命令就有用武之地了,虽然比起外部命令来稍微慢了一点点儿. vim 多文件查找 这个vim内置命令就是vimgrep,有两种基本的使用方式: :vim[grep][!] /{pattern}/[g][j] {file} ... :vim[grep][!] {pattern} {file} ...

Linux系统Vim编辑器如何安装YouCompleteMe插件?

Linux系统Vim编辑器如何安装YouCompleteMe插件?  编译配置选项: /configure --with-features=huge --enable-pythoninterp --enable-python3interp --enable-luainterp --enable-multibyte --enable-sniff --enable-fontset 在我的机器上装有python2.7.5 和 python3.3, 但加了enable-python3interp参数依然

Linux系统下转换文件编码的方法小结

  一.利用iconv命令进行文件内容编码转换 用法: iconv [选项...] [文件...] 有如下选项可用: 输入/输出格式规范: -f, --from-code=名称 原始文本编码 -t, --to-code=名称 输出编码 信息: -l, --list 列举所有已知的字符集 输出控制: -c 从输出中忽略无效的字符 -o, --output=FILE 输出文件 -s, --silent 关闭警告 --verbose 打印进度信息 -?, --help 给出该系统求助列表 --usag

Linux中用PHP判断程序运行状态的2个方法

  这篇文章主要介绍了Linux中用PHP判断程序运行状态的2个方法,需要的朋友可以参考下 有时候在服务器上面写一些脚本的时候,经常要放到crontab里面定时运行.时间长了就有一个问题,那就是程序重复运行消耗太多的资源,怎么处理呢?下面我写了两种方法: 第一种:用linux里面的正则匹配 代码如下: function ifrun($clsname,$bf = 0) { //下面进行检测,如有一个进程正在运行,则不运行 $str=shell_exec("/bin/ps ax > /home

whitespace-关于linux中vim插件的问题.

问题描述 关于linux中vim插件的问题. 本人使用了bronson/vim-trailing-whitespace和nicoraffo/conque两个插件. 一个是标记无效空格,一个是在vim中调出终端. 于是就出现调出终端后会在终端分屏中红色高亮无效空格. 请问如何不在终端中标记无效空格.并且标记无效空格的插件我还非常想用. 在whitespace中有g:extra_whitespace_ignored_filetypes选项. 此选项可以对相应的文件类型忽略.但是我不知道conque调

linux终端vim操作系统模拟问题

问题描述 linux终端vim操作系统模拟问题 #include<stdio.h> #include<stdlib.h> #include<time.h> #include<string.h> int main( void ) { struct process{ char pname[3]; char *next; int act; int runt; char sta; }; int a[5]; int i,j=0,m,n,u=1,o; int curre

解决linux下vim中文乱码的方法_Linux

Vim编码的详细介绍 Vim和所有的流行文本编辑器一样,Vim 可以很好的编辑各种字符编码的文件,这当然包括 UCS-2.UTF-8 等流行的 Unicode 编码方式. Vim 有四个跟字符编码方式有关的选项,encoding.fileencoding.fileencodings.termencoding (这些选项可能的取值请参考 Vim 在线帮助  :help encoding-names),它们的意义如下:     1.encoding: Vim 内部使用的字符编码方式,包括 Vim 的

如何恢复 Linux 上删除的文件,第 1 部分

来源:http://www.ibm.com/developerworks/cn/linux/l-cn-filesrc/ 原理及普通文件的恢复 要想恢复误删除的文件,必须清楚数据在磁盘上究竟是如何存储的,以及如何定位并恢复数据.本文从数据恢复的角度,着重介绍了 ext2 文件系统中使用的一些基本概念和重要数据结构,并通过几个实例介绍了如何手工恢复已经删除的文件.最后针对 ext2 现有实现存在的大文件无法正常恢复的问题,通过修改内核中的实现,给出了一种解决方案. 内容 对于很多 Linux 的用户

Linux driver 板级文件跟踪一般方法

/*********************************************************************************** * Linux driver 板级文件跟踪一般方法 * 声明: * 1. 这是本人使用vim+ctags最常用的跟踪方法,也是唯一的方法: :) * 2. 本人已经在跟踪线上标注了跟踪序号,也就是先后循序: * 3. 就目前而言,这种方法貌似是通用的: * 4. 这个例子仅仅是简单的演示,并没有全部展开,如果想要进一步跟踪, *