您的位置:首页 > 其它

使用vi编辑器删除文本中所有空行

2014-03-20 16:56 232 查看
我这里在编辑一个很大的文件,有几万行,都是文件名sheetid, 中间有很多空行,我现在要做的事情就有要把这个文件中的空行都删除掉,这个本来想在ultraedit里面完成的,结果弄了好半天都没有搞定,时间紧急也没法再去慢慢的try了,干脆放到AIX上面使用vi来做,也是在网上google 结果找到很多这样的:

12)删除操作

:%s/r//g 删除DOS方式的回车^M

:%s= *$== 删除行尾空白

:%s/^(.*)n1/1$/ 删除重复行

:%s/^.pdf/new.pdf/ 只是删除第一个pdf

:%s/<!--_.-->// 又是删除多行注释(咦?为什么要说「又」呢?)

:g/^s*$/d 删除所有空行 :g/^s*$/d 删除所有空行

:g!/^dd/d 删除不含字符串'dd'的行

:v/^dd/d 同上 (译释:v == g!,就是不匹配!)

:g/str1/,/str2/d 删除所有第一个含str1到第一个含str2之间的行

:v/./.,/./-1join 压缩空行

:g/^$/,/./-j 压缩空行

ndw 或 ndW 删除光标处开始及其后的 n-1 个字符。

d0 删至行首。

d$ 删至行尾。

ndd 删除当前行及其后 n-1 行。

x 或 X 删除一个字符。

Ctrl+u 删除输入方式下所输入的文本。

^R 恢复u的操作

J 把下一行合并到当前行尾

V 选择一行

^V 按下^V后即可进行矩形的选择了

aw 选择单词

iw 内部单词(无空格)

as 选择句子

is 选择句子(无空格)

ap 选择段落

ip 选择段落(无空格)

D 删除到行尾

x,y 删除与复制包含高亮区

dl 删除当前字符(与x命令功能相同)

d0 删除到某一行的开始位置

d^ 删除到某一行的第一个字符位置(不包括空格或TAB字符)

dw 删除到某个单词的结尾位置

d3w 删除到第三个单词的结尾位置

db 删除到某个单词的开始位置

dW 删除到某个以空格作为分隔符的单词的结尾位置

dB 删除到某个以空格作为分隔符的单词的开始位置

d7B 删除到前面7个以空格作为分隔符的单词的开始位置

d) 删除到某个语句的结尾位置

d4) 删除到第四个语句的结尾位置

d( 删除到某个语句的开始位置

d) 删除到某个段落的结尾位置

d{ 删除到某个段落的开始位置

d7{ 删除到当前段落起始位置之前的第7个段落位置

dd 删除当前行

d/text 删除从文本中出现“text”中所指定字样的位置,

一直向前直到下一个该字样所出现的位置(但不包括该字样)之间的内容

dfc 删除从文本中出现字符“c”的位置,一直向前直到下一个该字符所出现的位置(包括该字符)之间的内容

dtc 删除当前行直到下一个字符“c”所出现位置之间的内容

D 删除到某一行的结尾

d$ 删除到某一行的结尾

5dd 删除从当前行所开始的5行内容

dL 删除直到屏幕上最后一行的内容

dH 删除直到屏幕上第一行的内容

dG 删除直到工作缓存区结尾的内容

d1G 删除直到工作缓存区开始的内容

....

上面这段我要用的是这个地方

:g/^s*$/d 删除所有空行

使用vi打开文本文件,然后进入命令模式输入 g/^s*$/d

这个时候要等待,它现在已经在处理文件了,最后保存即可,第一次用这个功能,不懂!下完命令后都没有等待,然后还以为自己哪个地方出错了呢。

感受到很强大的功能

Linux的C文件执行

最近在研究pro*c,技术这个东西不用就忘,还是记下来,以后留着垫底吧。

在windows环境下访问Linux的C文件。

首先:用自己的电脑写好一个.c文件(如:hello.c),通过“FTP软件”传到Linux上

然后:通过本地的“Telnet软件”编辑刚传到Linux上的那个.c文件

命令大概如下:dir / ls --------列出当前的目录内容

cd空格. cd空格- cd空格~ cd空格/aa/bb(路径)
-----------控制路径的

cat空格hello.c----------------列出hello.c中的文件内容

vi空格hello.c------------------进入hello.c文件中进行编辑 ***START***

a / i / o -------------分别进行编辑状态加,插,加

退格键-----------------删除当前光标位置

ESC----------------退出编辑状态

:w ----------------对编辑的内容保存

:q ----------------对编辑块退出 ***END***

AA gcc空格hello.c ----------------编译C文件为:a.out

BB 或gcc空格hello.c空格-o空格hello --编译C文件并指定文件名为:hello

AA ./a.out回车-------------------运行出结果

BB 或 ./hello回车-------------------运行出结果

rm空格hello --------------删除hello文件

exit ------------退出Telnet编辑环境

这样一个Linux的C文件的编译执行过程就完了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: