免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
123下一页
最近访问板块 发新帖
查看: 3421 | 回复: 20
打印 上一主题 下一主题

sed可以实现修改后直接存档么? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-05-23 16:53 |只看该作者 |正序浏览
我看了wingger MM的文章。但还是找不到方法。
试了加-i参数,可能我的版本不支持。

如下
sed -e 's/abc/aaa/' b.sql
aaa
bbb

我想改后直接存档。如何做?

论坛徽章:
0
21 [报告]
发表于 2006-07-05 10:43 |只看该作者
利用管道输入,再重定向输出。
我试了下,可以。

论坛徽章:
0
20 [报告]
发表于 2006-07-05 10:24 |只看该作者

hahaghost 兄请看清楼主的问题再回帖

需要直接存档,换句话说相当于直接编辑原文件,不使用临时文件。如果使用临时文件,就不用到这里发问啦

论坛徽章:
0
19 [报告]
发表于 2006-07-05 07:25 |只看该作者
sed 高版的才有 -i 这个选项

[flowing@srt1 ~]$ uname -a
FreeBSD srt1.sunbo.com 6.1-RELEASE FreeBSD 6.1-RELEASE #0: Sun Jul  2 22:00:15 CST 2006     root@srt1.sunbo.com:/usr/src/sys/i386/compile/SUNBO.srt1  i386
[flowing@srt1 ~]$ sed -V
sed: illegal option -- V
usage: sed script [-Ealn] [-i extension] [file ...]
       sed [-Ealn] [-i extension] [-e script] ... [-f script_file] ... [file ...]
[flowing@srt1 ~]$


     -i extension
             Edit files in-place, saving backups with the specified extension.
             If a zero-length extension is given, no backup will be saved.  It
             is not recommended to give a zero-length extension when in-place
             editing files, as you risk corruption or partial content in situ-
             ations where disk space is exhausted, etc.




[flowing@sata flowing]$ sed -V
GNU sed version 4.0.7
Copyright (C) 2003 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE,
to the extent permitted by law

  -i[suffix], --in-place[=suffix]
                 edit files in place (makes backup if extension supplied)

论坛徽章:
0
18 [报告]
发表于 2006-07-04 18:49 |只看该作者
sed可以吧,理论上都可以
先输出到tmp然后再搞回来:)
例如sed xxx xxx.sql>tmp;mv tmp xxx.sql
这样不就回来了嘛
当然类似的方法还很多……

论坛徽章:
0
17 [报告]
发表于 2006-07-04 15:51 |只看该作者

sed的w选项不行的

我试过了,用w选项不行的,把原文件都清空了,不支持-i选项的sed完成此功能看来有点难.

论坛徽章:
0
16 [报告]
发表于 2006-07-04 15:22 |只看该作者
用sed 的w选项,可以实现之。
sed 's/aaa/aa/g' w aaa.txt
好像是这么写的,可以试一下。

论坛徽章:
0
15 [报告]
发表于 2006-07-04 15:07 |只看该作者

gawk如何做呢?

请问"寂寞烈火"兄和其他高人,用gawk如何实现楼主功能,多谢指教!

论坛徽章:
0
14 [报告]
发表于 2006-05-25 09:53 |只看该作者
试过sed的-i了。。说没有个参数

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
13 [报告]
发表于 2006-05-24 14:19 |只看该作者
如果是 gnu 的 sed, 看看 -i 的選項....
  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP