解释一下Linux中 awk '$NF == "" {print $2, $1}' annuaire_temp.txt
时间: 2024-02-29 11:55:55 浏览: 19
这是一个awk命令的脚本,它用于处理文本文件annuaire_temp.txt。下面是脚本中各部分的解释:
- awk是一个文本处理命令,用于逐行处理输入文件并根据指定规则进行操作。
- '$NF == "" {print $2, $1}'是awk的操作规则,它包含两部分:
- $NF是awk内置变量,表示每一行的最后一个字段。这里的$NF == ""表示只选择最后一个字段为空的行。
- {print $2, $1}表示对于符合前面条件的每一行,输出该行的第二个字段和第一个字段,中间用空格分隔。
因此,该脚本的作用是从annuaire_temp.txt中选择最后一个字段为空的行,并输出这些行的第二个字段和第一个字段,中间用空格分隔。
相关问题
awk '{if(length($NF) != 10) print $1,$2}' annuaire_sed.txt
您的问题是一个 Linux 的命令行问题,这是一条使用 awk 命令的命令,它的作用是从文件 annuaire_sed.txt 中读取数据,并将最后一列的长度不为10的行的第一列和第二列打印出来。具体解释如下:
- awk:命令本身,用于处理文本文件并生成报告。
- '{if(length($NF) != 10) print $1,$2}':命令的操作部分,其中 $NF 表示最后一列,length 函数用于计算字符串的长度,如果最后一列的长度不等于 10,则打印第一列和第二列。
- annuaire_sed.txt:输入文件的名称。
因此,这个命令会从文件 annuaire_sed.txt 中读取数据,并打印出最后一列的长度不为 10 的行的第一列和第二列。
linux awk命令 $nf
在Linux awk命令中,$NF代表的是当前行的最后一个字段的内容。与之相对,NF代表的是当前行的字段个数。所以当使用{print $NF}时,会输出当前行的最后一个字段的内容。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* [LINUX - awk命令之NF和$NF区别 (转)](https://blog.csdn.net/weixin_30352191/article/details/96490661)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
- *2* *3* [LINUX - awk命令之$NF的应用](https://blog.csdn.net/u013380694/article/details/129157777)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]