ZhiBing's blog(码上看世界) ZhiBing's blog(码上看世界)
首页
  • Linux工具链

    • shell命令
  • 构建

    • CMake
    • Makefile
  • 版本管理

    • Git
    • Github
  • IDE及工具

    • vscode
    • CLion
  • 设计模式

    • 设计原则
  • 编程语言

    • C++
    • Go
    • Python
    • Shell
  • 调试

    • gdb
  • 开发者测试

    • gtest
  • 系统支撑

    • 操作系统
  • 性能优化

    • 编译优化选项
    • perf
    • valgrind
  • 容器

    • Docker
  • 微服务

    • Rancher
  • 其他
  • 随笔
  • 友情链接
收藏
  • 分类
  • 标签
  • 归档
关于
GitHub (opens new window)

ZhiBing Zheng

时间会回答成长
首页
  • Linux工具链

    • shell命令
  • 构建

    • CMake
    • Makefile
  • 版本管理

    • Git
    • Github
  • IDE及工具

    • vscode
    • CLion
  • 设计模式

    • 设计原则
  • 编程语言

    • C++
    • Go
    • Python
    • Shell
  • 调试

    • gdb
  • 开发者测试

    • gtest
  • 系统支撑

    • 操作系统
  • 性能优化

    • 编译优化选项
    • perf
    • valgrind
  • 容器

    • Docker
  • 微服务

    • Rancher
  • 其他
  • 随笔
  • 友情链接
收藏
  • 分类
  • 标签
  • 归档
关于
GitHub (opens new window)
  • Linux工具链

    • shell命令

      • awk 命令
        • print 命令
        • 常用函数
        • 常见用法
      • vim 使用
      • top使用
      • grep命令
      • nm命令
      • sed命令
  • 构建

  • 版本管理

  • IDE及工具

  • 基础领域
  • Linux工具链
  • shell命令
zhengzhibing
2022-06-15
目录

awk 命令

# awk 命令

awk 是一种用于处理文本的编程语言工具。它将文件作为记录序列处理。在一般情况下,文件内容的每行都是一个记录。每行内容都会被分割成一系列的域,因此,我们可以认为一行的第一个词为第一个域,第二个词为第二个,以此类推。

# print 命令

print 命令用于输出文本。其输出文本总是以输出记录分隔符分割,其默认是换行符。该命令的最简形式是:

print:会输出当前记录的内容。在 awk 中,记录会被分割成域,它们可以被分别显示或者使用。

例:

ps -ef | awk '{print}'
1

print $1:显示记录的第一个域

例:

# 显示/sbin/init进程的所属用户
ps -ef | grep "/sbin/init" | grep -v grep | awk '{print $1}'
1
2

print $2, $3: 显示记录的第 2,3 个域,并以预定义的输出域分隔符分割,其默认是一个空格符

例:

# 显示/sbin/init进程的进程ID和父进程ID
ps -ef | grep "/sbin/init" | grep -v grep | awk '{print $2, $3}'
1
2

$0是指整个记录,print和print $0是等效的。

# 常用函数

  • toupper(): 字符转大小
  • tolower(): 字符转小写
  • length(): 返回字符串长度

# 常见用法

格式:

# 对filename按照action处理
$ awk [action] [filename]
1
2

例如:

# 将demo.txt每一行打印出来
awk '{print $0}' demo.txt
1
2

指定文件中字段的分隔符,按照这个分隔符划分域:

# 指定分隔符是':'
awk -F ':' '{print toupper($1)}' demo.txt
1
2
#shell
上次更新: 2022/06/17, 07:22:19
vim 使用

vim 使用→

最近更新
01
HPE gen10 plus 安装ESXI 7
06-12
02
ESXI 7安装黑群晖
06-12
03
ESXI 7安装win10
06-12
更多文章>
Theme by Vdoing | Copyright © 2022-2024 ZhBing Zheng | 粤ICP备2022062743号
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式