bbs.ChinaUnix.net
首页 | 微博 | 新闻 | Linux | FreeBSD | AIX | Windows | 博客 | 论坛 | 存储 | 网络 | 人才 | Wiki | 资料 | 读书 | 手册 | 下载 | 空间 | 搜索
  免费注册 | 忘记密码 | 会员登录 | 搜索 | 帮助 


如何提取一个文件的第n到第n+m列?

  首页 » 论坛 » Shell »
[打印] [收藏] [本帖文本页] [推荐此主题给朋友]

如何提取一个文件的第n到第n+m列?
如有下面文件:
0123456789
as safsdff
ojojkeruey
xc*neurtop

我想取出第2-4列的内容,如下:
123
s s
joj
c*n

我该如何做呢?

引申一下,面对任何文件,我都想提取文件的第n到第n+m列,请问我该如何做?



awk -F "" '{for(j=n;j<=m;j++){printf $j ;print""} }'
__________________________________
Shell初学者
シェル初心者



回复 #1 野鸭子 的帖子

try

awk -F',' -v var='' '{var=$0; var=substr(var, 2, 3); print var}' urfile
__________________________________
-----------------------------------------------------------------
GNU bash, version 3.1.17(6)-release (i686-pc-cygwin)




cut -c2-4
__________________________________
88,cu...





QUOTE:
原帖由 寂寞烈火 于 2009-1-5 14:46 发表
cut -c2-4




:em03: :em03:
__________________________________
linux:
Linux BBC.com 2.6.23.1-42.fc8 #1 SMP Tue Oct 30 13:55:12 EDT 2007 i686 i686 i386 GNU/Linux

solaris:
SunOS s_test 5.8 Generic_117350-41 sun4u sparc SUNW,Ultra-60



  1. while read line; do echo ${line:1:3}; done <file
复制代码
__________________________________
天行健,君子以自强不息
发奋忘食,乐以忘优,不知老之将至
温故而知新



一看到这个我就想到cut
__________________________________
long time no see ~



这种应该是cut做的事情
__________________________________
暮春三月,羊欢草长,
天寒地冻,问谁饲狼?
人心怜羊,狼心独怆,
天心难测,世情如霜。
----------------------------------



回复 #8 smallstar001 的帖子

恩 cut写起来方便还容易理解
__________________________________
Shell初学者
シェル初心者





QUOTE:
多看书,少看电视、杂志、报纸,不要轻易相信什么,要学会自己思考,别在该死的信息时代用繁忙并且廉价的CPU闲置了你宝贵的大脑。



这个NX,大哲!
__________________________________

LIVE FREE OR DIE!     K.I.S.S.  DRY

远离shell


Copyright © 2001-2010 ChinaUnix.net All Rights Reserved     联系我们:

感谢所有关心和支持过ChinaUnix的朋友们    转载本站内容请注明原作者名及出处

京ICP证041476号


清除 Cookies - ChinaUnix - Archiver - WAP - TOP