awk 'NR>2 {print $1}'
时间: 2024-04-11 18:32:36 浏览: 235
`awk 'NR>2 {print $1}'` 是一个用于筛选并打印文本行的 AWK 命令。在这个命令中,`NR>2` 表示只处理行号大于2的行,`print $1` 表示打印每行的第一个字段。
通常,这个命令用于从命令输出或文本文件中提取感兴趣的信息。在上面提到的命令中,它用于提取 `yarn application -list` 命令的输出中的应用程序 ID。
请注意,这个命令需要在正确的上下文中使用,比如与其他命令通过管道操作符 `|` 进行组合。
相关问题
top -b -n1 | awk '{ if (NR > 5) print }' |awk '{ if ($9 > 1000) print $1
这也是一条UNIX/LINUX命令,它的意思是:
1. top -b -n1:以批处理模式运行 top 命令,仅输出一次。
2. |:管道符,将前一个命令的输出结果作为后一个命令的输入。
3. awk '{ if (NR > 5) print }':使用 awk 对 top 命令的输出结果进行处理,其中:
- NR 表示 awk 处理的行号。
- if (NR > 5) print 表示只输出行号大于5的行,即从第6行开始输出,前5行是 top 命令的系统信息。
4. |:管道符,将上一个 awk 命令的输出结果作为下一个 awk 命令的输入。
5. awk '{ if ($9 > 1000) print $1}':再次使用 awk 进行处理,其中:
- if ($9 > 1000) print $1 表示只输出第9列大于1000的行,即只输出 CPU 占用率大于 10% 的进程。
- $1 表示输出第1列,即进程的 PID。
因此,这条命令的作用是输出 CPU 占用率大于 10% 的进程的 PID。
awk: cmd. line:1: NR>2{print $5}{END{print}} awk: cmd. line:1: ^ syntax error
抱,我犯了一个错误。在awk命令中,忘记了一个分号。正确的命令应该是这样的:
```bash
df_usage=$( -h | grep -v mnt | awk 'NR>2{print $5} END{print}')
```
请注意,将脚本中的反引号改为了`$()`形式,这是一种更现代化的命令替换方式。
感谢您指出错误,如果您还有其他问题,请随时提问!
阅读全文