sh/bash/dash/ksh/zsh等Shell脚本
-
yechf
- 帖子: 305
- 注册时间: 2006-04-27 12:18
- 来自: 浙江德清武康
#1
帖子
由 yechf » 2013-01-11 10:21
libreoffice的文档中,有太多的空行,前几天想把两个或以上的空行,换成一个空行。
摸索几天,没有结果。
知道的,帮忙下。
THX!

-
gb112211
- 帖子: 3
- 注册时间: 2013-01-11 11:19
- 系统: win7
#2
帖子
由 gb112211 » 2013-01-11 11:22
用vim编辑,用这个命令试下
:%s/^\n$//g
-
Rap:D
- 帖子: 33
- 注册时间: 2012-11-12 18:52
- 系统: ubuntu 11.10
#3
帖子
由 Rap:D » 2013-01-11 11:41
sed就可以了。。。。
代码: 全选
sed '/^$/N;/\n$/D' text
代码: 全选
#!/usr/bin/python
from Nirvana import Kurt_Cobain,Chris_Novoselic,Dave_Grohl
import Nirvana
while True:
Nirvana.GrungeIsNotDead()
-
Rap:D
- 帖子: 33
- 注册时间: 2012-11-12 18:52
- 系统: ubuntu 11.10
#4
帖子
由 Rap:D » 2013-01-11 11:59
要不就写一个python脚本
代码: 全选
#!/usr/bin/python
import re,sys
fd = open("test.log")
Buff = ""
for line in fd:
Buff += line
Matcher = re.compile("^[\r\n]+$",re.MULTILINE)
sys.stderr.write(Matcher.sub("",Buff))
代码: 全选
#!/usr/bin/python
from Nirvana import Kurt_Cobain,Chris_Novoselic,Dave_Grohl
import Nirvana
while True:
Nirvana.GrungeIsNotDead()
-
yechf
- 帖子: 305
- 注册时间: 2006-04-27 12:18
- 来自: 浙江德清武康
#5
帖子
由 yechf » 2013-01-11 12:58
楼上两位,你好。
首先,这是一个ODT文件。
我想在libreoffice中查找替换。
没说清楚,sorry。
gb112211:
ub1004@fzkj:~$vim a.odt
:%s/^\n$//g
则提示:
E486 找不到模式 :^\n$
Rap:D:
ub1004@fzkj:~$ sed '/^$/N;/\n$/D' a.odt
我加了-i 也不行哦。
python不懂,不考虑。
-
gb112211
- 帖子: 3
- 注册时间: 2013-01-11 11:19
- 系统: win7
#6
帖子
由 gb112211 » 2013-01-11 13:28
可能你文件内容的原因,我用上面两种方法都能够成功。
-
luojie-dune
- 帖子: 22033
- 注册时间: 2007-07-30 18:28
- 系统: Linux
- 来自: 空气中
#7
帖子
由 luojie-dune » 2013-01-11 13:55
odt 是 zip包裹的规范化 xml,不知道怎么定义的,找到那个就能用sed
另外,libreoffice,真的,,,是个很烂的修改工具,这个软件的设计理念就是给知道自己做什么的用户一次性做好。修改啥的。。。
-
yechf
- 帖子: 305
- 注册时间: 2006-04-27 12:18
- 来自: 浙江德清武康
#8
帖子
由 yechf » 2013-01-11 14:25
楼上你好。
ODT导出为xml,是一团浆糊。
我libreoffice用于工作有段时间了,觉得还不错。
gb112211,
你好,我贴出来,你试试。
-
附件
-
- a.odt
- (66.91 KiB) 已下载 46 次
-
gb112211
- 帖子: 3
- 注册时间: 2013-01-11 11:19
- 系统: win7
#10
帖子
由 gb112211 » 2013-01-11 14:47
楼主你应该是想删除掉一部分空行,而不是要合并连续的空行吧?
上面两种方法的作用是把文档里边连续的空行合并成一个空行,所以你用起来的时候会提示错误,因为找不到连续两个或以上的空行。
-
iamfbi
- 帖子: 1081
- 注册时间: 2009-02-06 9:18
- 来自: 小僧乃吐蕃国大雪山大轮寺护国法师座下四大护法之西域妖僧是也
#12
帖子
由 iamfbi » 2013-01-11 15:05
把两个\n换成一个\n。换多两次不就OK了?如果不支持搜索\n,把文本复制出来用其他工具替换掉再放回去。。不过就会失去格式。。
Laptop: i5-460m hm55 4g 320g hd5470 14'led 2.3kg (acer 4738g)
Windows XP 7 8 all in one partition.
Ubuntu 10.04 LTS
Mac OS X 10.6.7
折腾笔记
论坛随手记