关闭

sed和shell:删除文件的第n行和倒数第n行

标签: shell
2927人阅读 评论(0) 收藏 举报
分类:

删除第三行,并把结果送至文件newfile

sed '3d' file>newfile 

删除倒数第三行,把结果送至文件newfile

tac file|sed '3d'|tac >newfile

删除倒数第三行,bash shell版本

linenum=`cat file | wc -l`
linenum_last3=`expr $linenum - 3`
sed -n ''"$linenum_last3"'d' file

注释:sed使用变量
是通过单引号双引号。其实还有很多其它方法。

'"$variable '"

参考文献:
- 在sed中使用变量 - wendell的日志 - 网易博客
http://520hanchan.blog.163.com/blog/static/1569280420113284104669/
- sed, a stream editor
https://www.gnu.org/software/sed/manual/sed.html#Introduction
- sed中文手册_百度文库
http://wenku.baidu.com/view/b6b49702de80d4d8d15a4fe1.html
- SED的暂存空间和模式空间 - 乐在其中/Leo在其中 - ITeye技术网站
http://leowzy.iteye.com/blog/1453421

随语:
shell grep sed awk perl
- Q:学了perl,还有必要学grep sed awk吗?有人说学这么多,不统一,浪费时间学太多工具。
- 个人理解:
perl语言的实现,本来就很杂。各个工具有自己擅长的地方,而且有很强的共性,学起来不费事,一通百通,多学一门语言对熟悉的语言也有好处。总之,利远远大于弊。
- 总结各个工具特点(仅适合自己):
grep查找关键词;
awk用做列模式整理文本;
sed 替换修改文本;
perl是shell/grep/sed/awk的粘合剂。perl语言强大。一些小操作,还是用grep/sed/awk处理,简单。

1
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:133166次
    • 积分:2876
    • 等级:
    • 排名:第12354名
    • 原创:158篇
    • 转载:21篇
    • 译文:0篇
    • 评论:17条
    文章分类
    最新评论