unix - 如何在unix中读取文本文件的第n行和第m个字段
问题描述
假设我有 | 分隔文件,
Line1: 1|2|3|4
Line2: 5|6|7|8
Line3: 9|9|1|0
现在我需要在第二行读取 3 个字段,即上面示例中的 7,我如何使用 Cut 或 Sed 命令来做到这一点。我是unix新手,请帮忙
解决方案
一份工作awk
:
awk -F '|' 'NR==2{print $3}' file
或者
awk -F '|' -v row=2 -v col=3 'NR==row{print $col}' file
输出:
7
推荐阅读
- swift - Swift NSSortDescriptor:按字母顺序排序,从“A”以外的其他字母开始
- c++ - Google Kickstart - 如果未使用 cout.clear(),则答案错误
- python - 循环遍历 django 模板中的两个查询集
- node.js - 基于用户条件的股票筛选器
- ios - swift - 只有在条件匹配时,如何一个接一个地调用转义函数?
- excel - 主列表项更改时,相关的excel列表不会更改
- reactjs - 如何将道具传递到私人路线
- sql-server - 迁移到 Azure SQL - 如何集成域服务帐户?
- python - 'NoneType' 对象没有属性 'group' - 如何处理它?
- php - 如何使用 PHP 和 CURL 使用 api 在 github 上上传 zip