一、怎样用vi一次编辑多个文件?
$ vi file1 file2 ... fileN
依次编辑file1、file2直到fileN,中间用:wn (write & next)切换就好,分开使用:w和:n也是一样。:w,保存文件;:w file.new,则是另存为。:n,跳转至下一个文件;:n fileN+1 fileN+2 file N+M,则是创建了一个新的文件池。举一反三,用vi *就能编辑当前目录下所有的文件了。
万一被很多文件给搞的头昏脑胀,不妨试试:f或ctrl+g显示当前文件信息,又或者:args显示所有被选择的文件,其中[当前文件]是被方括号给框起来的。
:e fileX
不用圈定文件池,直接编辑fileX。几个小技巧::e#,返回之前编辑过的文件。:e!,取消改动,恢复上次的存档。:e %.new,创建一个名为fileX.new的文件。%即为当前文件名的替换符。不过,在保存文件的时候可能用的更多一些::w %.new,另存一个名为fileX.new的文件副本。
二,整行复制、剪切和粘贴
输入Nyy,把N行字拖(yank)到缓存中,是为复制。
输入p,取出缓存中的内容,放到(put)文件中,是为粘贴。另外,vi的缓存是所有文件共享的,所以也可以粘贴到其他文件中。
输入Ndd,把N行字删除(delete)——别担心,在删除之前,vi会把那N行字转移到缓存中,随时可以用p命令取出,是为剪切。