|
ganjie
初级用户
积分 49
发帖 37
注册 2007-5-8
状态 离线
|
『楼 主』:
第三方工具sed 如何添加多行?
看了一下,第三方工具sed ,发现它好像只能添加单行的,现在小弟想编个批处理,把下面这几段代码添加到当前目录里(包括所有子文件夹)的所有文本开头中,求会用这个工具的大大们,帮写个批处理,谢谢了!
<tr>— 技术永无止尽,未来事在人为<tr>
<td>我这个主要是要自动化<td>
<tr>— 技术永无止尽,未来事在人为01<tr>
<td>机构,户名,余额,借款日,到期日,起息日,四级,五级,表内息,表外息,客户号,借据号<td>
<tr>是否还应该加上别的判断<tr> 如1.txt内容为:
最近更新:
5.2 版:[2008-7-3]
1.音乐窗口支持更换配色方案;
2.支持在音乐窗口内使用右键菜单功能;
3.关闭音乐窗口时记忆当前页面状态;
4.为千千静听Web控件定制了默认界面;
5.清空缓存文件时区分缓存文件和用户文件;
6.修正5.2Beta版不能正常播放CD的问题;
7.修正5.2Beta版不能收听MMS协议网络广播的问题;
8.修正其他BUG;
添加内容后,为:
<tr>— 技术永无止尽,未来事在人为<tr>
<td>我这个主要是要自动化<td>
<tr>— 技术永无止尽,未来事在人为01<tr>
<td>机构,户名,余额,借款日,到期日,起息日,四级,五级,表内息,表外息,客户号,借据号<td>
<tr>是否还应该加上别的判断<tr>
最近更新:
5.2 版:[2008-7-3]
1.音乐窗口支持更换配色方案;
2.支持在音乐窗口内使用右键菜单功能;
3.关闭音乐窗口时记忆当前页面状态;
4.为千千静听Web控件定制了默认界面;
5.清空缓存文件时区分缓存文件和用户文件;
6.修正5.2Beta版不能正常播放CD的问题;
7.修正5.2Beta版不能收听MMS协议网络广播的问题;
8.修正其他BUG;
|
|
2009-2-5 11:15 |
|
|
ganjie
初级用户
积分 49
发帖 37
注册 2007-5-8
状态 离线
|
『第
2 楼』:
如果使用sed 太难的话,也可以直接用批处理就行了,总之是可以添加多行插入文本就行了!要求不生成临时文件,我在本论坛中看到过把一行插入文本开头的贴子,而且都是要生成临时文件。
|
|
2009-2-5 14:41 |
|
|
lxmxn
版主
积分 11386
发帖 4938
注册 2006-7-23
状态 离线
|
『第
3 楼』:
两种方法:
1、用-f参数调用sed脚本;
新建一个b.sed文件,内容为
Quote: | 1i<tr>— 技术永无止尽,未来事在人为<tr>\
<td>我这个主要是要自动化<td>\
<tr>— 技术永无止尽,未来事在人为01<tr>\
<td>机构,户名,余额,借款日,到期日,起息日,四级,五级,表内息,表外息,客户号,借据号<td>\
<tr>是否还应该加上别的判断<tr> |
|
然后命令行执行
sed -i -f b.sed 1.txt 2、用多个-e参数;
sed -i -e "1i<tr>— 技术永无止尽,未来事在人为<tr>" -e "1i<td>我这个主要是要自动化<td>" -e "1i<tr>— 技术永无止尽,未来事在人为01<tr>" -e "1i<td>机构,户名,余额,借款日,到期日,起息日,四级,五级,表内息,表外息,客户号,借据号<td>" -e "1i<tr>是否还应该加上别的判断<tr>" 1.txt
|
|
2009-2-5 14:49 |
|
|
yishanju
银牌会员
[b]看你妹啊[/b]
积分 1488
发帖 1357
注册 2006-5-20
状态 离线
|
『第
4 楼』:
膜拜lxmxn大神
sed -i 在windows下修改过的文本回车换行会变成黑方块,这个怎么解决呢
我用的SED 是从GUNWIN32 下载的最新版本、
|
有问题请发论坛或者自行搜索,再短消息问我的统统是SB |
|
2009-2-5 15:23 |
|
|
ganjie
初级用户
积分 49
发帖 37
注册 2007-5-8
状态 离线
|
『第
5 楼』:
上面的代码,运行后,它生成是一个 sedDOSSUX 文件,没有添加进文本中,不过sedDOSSUX 这个里的内容,却是我想要的内容,有什么方法,能让它添加入文本,又不生成sedDOSSUX 吗?难道是要删除原来的文本,然后去重命名 sedDOSSUX ,这样什么了
@echo off
setlocal enableDelayedExpansion
for /f "delims=" %%i in ('dir /s /b "*.txt"') do (
sed -i -f K:\tmp\b.sed %%i
)
pause [ Last edited by ganjie on 2009-2-5 at 15:44 ]
|
|
2009-2-5 15:37 |
|
|
lxmxn
版主
积分 11386
发帖 4938
注册 2006-7-23
状态 离线
|
『第
6 楼』:
RE yishanju
more result.txt > newfile.txt 即可搞定黑方块的问题。
RE ganjie
你肯定没有按照我的方法来,仔细检查一下吧,我测试过可行。
|
|
2009-2-5 15:42 |
|
|
ganjie
初级用户
积分 49
发帖 37
注册 2007-5-8
状态 离线
|
『第
7 楼』:
是的,刚才我少了一个b.sed 中少了一个1i ,我已经改了,在5楼,如何才能添加入文本,而不是生成sedDOSSUX
[ Last edited by ganjie on 2009-2-5 at 17:25 ]
|
|
2009-2-5 15:46 |
|
|