Chinaunix首页 | 论坛 | 博客
  • 博客访问: 541237
  • 博文数量: 76
  • 博客积分: 2990
  • 博客等级: 少校
  • 技术积分: 827
  • 用 户 组: 普通用户
  • 注册时间: 2008-09-26 10:53
文章分类

全部博文(76)

文章存档

2011年(47)

2010年(13)

2009年(5)

2008年(11)

分类: LINUX

2011-06-30 17:44:52


  当参数是一句话时, 用cat就不能逐行读取文本了,cat只会将第一个域读取出来.
怎么办呢?

1. 使用while read

FILENAME=$1
count=0
cat $FILENAME | while read LINE
do
let count++
echo "$count $LINE"
done


2. 使用awk循环

awk '{kount++;print kount, $0}
END{print "\nTotal " kount " lines read"}' $FILENAME

3. 带参数的head

while [ $count -lt $Lines ]
do
let count++
LINE=`head -n $count $FILENAME | tail -1`
echo "$count $LINE"
done

语句的数量都差不多.选一个用得最熟练的使用吧.
阅读(1092) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~