沙滩星空的博客沙滩星空的博客

linux管道和awk命令的使用

管道

pipe能让你将一个命令的输出发送给另一个命令的输入。管道符号 |, 左边的输出为右边的输入
通常与 grep, xargs, awk 等命令搭配使用。

awk命令

  • 打印文件第1行: awk 'NR==1{print}' rumenz.txt
  • 打印总行数: awk 'END{print NR}' rumenz.txt
  • 打印第2行: awk 'NR==2{print}' OR awk 'NR==2'
  • 打印文件第1列: awk '{print $1}' rumenz.txt
  • 打印第1,3,4列: awk '{print $1,$3,$4}' test.txt
  • 打印最后一列: awk '{print $NF}' rumenz.txt
  • 打印第2列: awk '{print $2}'

NR: awk正在处理的行号
NF: 根据指定分隔符(默认为空格), 分开的列(域)的总数

awk命令形式: awk [-F|-f|-v] 'BEGIN{} //{command1; command2} END{}' file

[-F|-f|-v] : 大参数,-F指定分隔符,-f调用脚本,-v定义变量 var=value


# 根据端口号查看进程PID. 读取第二列,第二行
lsof -i:1080 | awk '{print $2}' | awk  'NR==2{print}'

# 使用 kill 命令杀死PID查询结果
lsof -i:1080 | awk '{print $2}' | awk  'NR==2{print}' | xargs kill

linux awk用法详解 https://blog.csdn.net/ryf1099030083/article/details/118102915
linux之awk使用技巧 https://baijiahao.baidu.com/s?id=1713787521989841577&wfr=spider&for=pc
Linux中的管道和命名管道介绍 https://blog.csdn.net/weixin_29847829/article/details/116972245

未经允许不得转载:沙滩星空的博客 » linux管道和awk命令的使用

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址