利用awk命令提取其中一列包括特定字符的所有行怎么办

比如想用利用awk命令提取文件中第3列包含“GK”字符的所有行,应该怎样输入命令?

awk:用于一行中分成数个“字段”来处理。适合处理 小型数据。
运行模式:awk '条件类型1{动作1} 条件类型2{动作2} ...' filename

# last | awk '{print $1 "\t" $3}' <== 查看登录者的数据,只显示登录名和ip地址,并以[tab]隔开

awk 的内置变量
变量名称 代表的含义

NF 每一行($0)拥有的字段总数

NR 当前 awk 所处理的是 “第几行” 数据

FS 当前分隔符,默认空格键

awk 的逻辑运算符
运算单元 代表含义
> 大于
< 小于
>= 大于或等于
<= 小于或等于
== 等于
!= 不等于

范例:
cat /etc/passwd | awk '{FS=":"} $3 < 10 {print $1 "\t" $3}' <== 文件/etc/passwd是以":"分隔的,查看第三栏小于10的数据,并且只显示帐号与第三栏追问

例如我的文件第三列是我提取内容的依据,第三列是“GK001”"GK002"..."GK040" "LK003"“AP983”等,我需要把含“GK”字段的行全部提取出来,此时用awk怎么提取呢?

温馨提示:内容为网友见解,仅供参考
第1个回答  2019-01-01
在Unity3d游戏程序运行时所有附加到游戏对象上的脚本组件都会运行, Awake方法和Start方法都只会运行一次,多用于数据初始化。 这两个方法的执行顺序是: 先执行Awake方法,再执行Start方法

当脚本设置为不可用时

Awake方法仍然会执行一次,而Start方法则不会执行!

在游戏开始之前Awake用来初始化变量或游戏状态。 Awake方法在脚本生命周期中只会被调用一次。Awake方法在所有游戏对象初始化完之后才会被调用,所以可以安全的在Awake方法中引用或请求其它游戏对象数据。 所有游戏对象的Awake方法调用顺序是随机的。所以应该全用Awake方法来设置脚本之间的引用,而使用Start方法来互相来回传递信息。Awake方法总是在任何的Start方法调用之前调用。Awake不能做为协同(coroutine)使用

在Unity中使用Awake方法做为初始化器,而不是使用C#语法中的构造函数。在构造函数中进行初始化组件的序列化状态是未定义的。就像构造函数一样,Awake只调用一次。
第2个回答  2019-01-01
好久没有用了,还得查查笔记咯

awk 如何提取匹配字段 打印整行
cat a.txt |awk '{if ($1=="XXXX") print $0}'|awk '{if ($2=="XXXX") print $0}' >b.txt

awk命令怎么处理特殊字符
按照接口规范生成的文件 域分隔符是 0x05,记录分隔符是0x0A0D。现在我想看我生成的文件域的个数是不是对的,不知道怎么处理这个0x05 和 0x0A0D。例如: awk 'BEGIN{FS='\\005';RS='\\00A\\00D'} print{NF}' xxx.dat 这样写指令好像我的记录控制符回车换行写错了,如果我不指定RS,那么默认是换行,好像结...

awk打印某列之后的所有列
这里以ps -aux的结果为例,打印运行程序的命令全路径。命令全路径在ps -aux结果的第10行以后,从第11行开始。 如下是ps -aux 的输出结果 我的目的是截取后面的命令全路径 也就是需要打印第11列到最后一行。ps -aux |sort -rn -k4 |head -10 : 输出内存占用排名前十的进程 for(i=...

awk怎么提取某一关键词后的内容
match函数查找关键词后,自动设置的两个变量RSTART表示关键词开始位置,RLENGTH表示关键词长度,用substr从关键词后的一个位置取出内容即可 AWK是一种处理文本文件的语言,是一个强大的文本分析工具。本文将使用命令awk将具有某个关键字的段落提取出来。AWK是一个优良的文本处理工具,Linux及Unix环境中现有的...

如何用awk命令提取文件中的某一列并统计该列中某个数字出现的次数?
awk '{cnt[($3>100?100:$3)]++} END{for(key in cnt) print key ":" cnt[key]}' file

如何用awk,sed,grep实现查找指定位置并替换或删除所在行?
sed -ri 's\/(.{4})TT(.*)\/\\1sa\\2\/' -e 's\/(.{4})SA(.*)\/\\1TT\\2\/' test.txt 一起交流学习linux

awk提取某些行的元素
awk 'NR>=3&&NR<=5{print}' filename

Linux提取文本文件特定行数的技巧linux提取行数
首先,如果要查看一个文件的前几行,可以使用cat命令,在Linux中,cat是“最基本的文件显示工具”,可以显示文件内容。使用cat 命令,格式为:cat filename,如果要从文件的某一行开始显示文件的内容,可以使用cat -n filename格式的命令,n为需要显示的行数,表示提取文件的从第n行开始之后的所有(...

linux怎么用awk和sed删除文本中只有一列的行?
awk '{if (NF>1) print $0}' test.txt

用SELL或awk将每行的第三到第七的字符取出来,并进行排序
另外提醒的就是要注意:不同版本的 SHELL 编程风格(例如:bash、C-Shell),其语法、语句并不是兼容的、其语法是相当严格的,所以有时候即使差那么一点点(哪怕是一个回车换行符),SHELL 脚本程序都通不过。这也是 SHELL 编程非常难于调试的一个问题。这都是我当初进行SHELL编程时碰到过的困难。

相似回答