我的.txt文件中有如下数据,我想提取值为 12 的行并将其复制到新.txt文件中。我尝试过sed但可以得到结果,任何帮助将不胜感激。谢谢
"944760 1939" 10
"944760 1940" 12
"946120 1940" 2
"946370 1939" 10
"946370 1940" 12
"946460 1940" 6
"946530 1939" 10
Run Code Online (Sandbox Code Playgroud)
为什么不直接搜索论坛,在这里发帖之前,重复了这么多帖子
awk '$3 == 12' infile > outfile
Run Code Online (Sandbox Code Playgroud)
这与
awk '$3 == 12 { print }' infile > outfile
Run Code Online (Sandbox Code Playgroud)
解释
$3 == 12 如果第 3 列等于 12,则打印此类记录/行 以下简单awk可能对您有所帮助:
awk '$NF==12{print $0 > "new_file"}' Input_file
Run Code Online (Sandbox Code Playgroud)
解释:
$NF==12:如果最后一个字段的值是12表示条件为真,则在此处检查条件,然后执行进一步/以下语句。
{print $0 > "new_file"}: 将当前行 ($0) 值打印到名为的输出文件
new_file(您也可以根据自己的意愿更改其名称)。
Input_file: 在这里提到 Input_file 名称。
解决方案 3:根据 karafka 先生的评论,现在也添加这个。
awk'$NF==12' Input_file > "new_file"
Run Code Online (Sandbox Code Playgroud)