首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >边读边行-限制行数

边读边行-限制行数
EN

Stack Overflow用户
提问于 2018-09-06 13:38:37
回答 1查看 770关注 0票数 0

我试图限制在line读取行循环中找到的行数。例如:

文件: order.csv

代码语言:javascript
复制
 123456,ORDER1,NEW
 123456,ORDER-2,NEW
 123456,ORDER-3,SHIPPED

我正在做以下几件事。

代码语言:javascript
复制
 cat order.csv | while read line;
 do
  order=$(echo $line | cut -d "," -f 1)
  status=$(echo $line | cut -d "," -f 3)
  echo "$order:$status"
 done

其中产出:

代码语言:javascript
复制
  123456:NEW
  123456:NEW
  123456:SHIPPED

我怎么才能限制行数。在这种情况下,有三个。如何将它们限制为2,以便只显示前两个?

期望产出:

代码语言:javascript
复制
  123456:NEW
  123456:NEW
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-09-06 13:44:17

有一些方法可以满足您的要求:

方法1

使用head显示文件的前几行。

代码语言:javascript
复制
head -n 2 order.csv | while read line;
do
    order=$(echo $line | cut -d "," -f 1)
    status=$(echo $line | cut -d "," -f 3)
    echo "$order:$status"
done

方法2

使用for循环。

代码语言:javascript
复制
for i in {1..2}
do
    read line
    order=$(echo $line | cut -d "," -f 1)
    status=$(echo $line | cut -d "," -f 3)
    echo "$order:$status"
done < order.csv

方法3

使用awk

代码语言:javascript
复制
awk -F, 'NR <= 2 { print $1":"$3 }' order.csv
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52205383

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档