当前位置: 首页 > wzjs >正文

网页设计一般尺寸江苏seo平台

网页设计一般尺寸,江苏seo平台,怎样做触屏版手机网站,免费的网站模板哪里有文章目录 **一、AWK 基本语法****二、核心概念****1. 内置变量****2. 分隔符****3. BEGIN 和 END 块** **三、常见用法示例****1. 基础打印****2. 条件过滤****3. 计算与统计****4. 字符串操作****5. 处理 CSV 文件** **四、高级用法****1. 使用数组统计****2. 多条件分支&…

文章目录

      • **一、AWK 基本语法**
      • **二、核心概念**
        • **1. 内置变量**
        • **2. 分隔符**
        • **3. BEGIN 和 END 块**
      • **三、常见用法示例**
        • **1. 基础打印**
        • **2. 条件过滤**
        • **3. 计算与统计**
        • **4. 字符串操作**
        • **5. 处理 CSV 文件**
      • **四、高级用法**
        • **1. 使用数组统计**
        • **2. 多条件分支(if-else)**
        • **3. 结合外部命令**
        • **4. 自定义函数**
      • **五、实战场景示例**
        • **1. 分析 Nginx 访问日志**
        • **2. 提取特定时间段日志**
        • **3. 生成格式化报告**
      • **六、常用技巧**
      • **七、性能优化**

AWK 是 Linux 下功能强大的文本处理工具,擅长按列处理结构化数据(如日志、CSV)。它以逐行方式处理文本,支持条件过滤、计算、格式化输出等。以下是 AWK 的核心用法和常见场景:


一、AWK 基本语法

awk '模式 {动作}' 文件名
  • 模式:过滤行的条件(如正则表达式、逻辑判断)。
  • 动作:对匹配的行执行的操作(如打印、计算)。
  • 未指定模式:默认处理所有行。
  • 未指定动作:默认打印整行。

二、核心概念

1. 内置变量
  • $0:当前行的全部内容。
  • $1, $2, ..., $n:第 1 到第 n 列的内容(默认以空格或制表符分隔)。
  • NF:当前行的列数(Number of Fields)。
  • NR:当前处理的行号(Number of Record)。
  • FS:输入字段分隔符(默认空格,可通过 -F 指定)。
  • OFS:输出字段分隔符(默认空格)。
2. 分隔符
  • 指定输入分隔符(如 :,):
    awk -F ':' '{print $1}' /etc/passwd   # 输出第一列(用户名)
    
3. BEGIN 和 END 块
  • BEGIN:在处理任何行前执行一次。
  • END:在处理所有行后执行一次。
    awk 'BEGIN {sum=0} {sum+=$1} END {print sum}' data.txt  # 计算第一列总和
    

三、常见用法示例

1. 基础打印
# 打印文件所有内容
awk '{print}' file.txt# 打印第一列和第三列
awk '{print $1, $3}' file.txt# 自定义输出格式(OFS 控制列分隔符)
awk -v OFS=" | " '{print $1, $3}' file.txt
2. 条件过滤
# 打印第二列大于 100 的行
awk '$2 > 100 {print $0}' data.txt# 匹配包含 "error" 的行(不区分大小写)
awk '/error/i {print}' log.txt# 逻辑组合(&& 和 ||)
awk '$1 == "admin" && $3 > 50 {print $2}' users.txt
3. 计算与统计
# 计算第一列的总和
awk '{sum += $1} END {print sum}' data.txt# 统计行数
awk 'END {print NR}' data.txt# 求某一列的平均值
awk '{sum += $2} END {print sum/NR}' data.txt
4. 字符串操作
# 拼接字符串
awk '{print "User: " $1 ", Age: " $2}' users.txt# 截取子字符串(substr)
awk '{print substr($1, 1, 3)}' data.txt  # 输出第一列的前3个字符# 替换文本(gsub)
awk '{gsub("old", "new"); print}' file.txt
5. 处理 CSV 文件
# 指定逗号为分隔符
awk -F ',' '{print $2}' data.csv# 过滤第三列为 "success" 的行
awk -F ',' '$3 == "success" {print $1, $4}' data.csv

四、高级用法

1. 使用数组统计
# 统计某列唯一值出现次数(如统计IP访问次数)
awk '{ip_count[$1]++} END {for (ip in ip_count) print ip, ip_count[ip]}' access.log
2. 多条件分支(if-else)
awk '{if ($2 >= 90) grade = "A";else if ($2 >= 80) grade = "B";else grade = "C";print $1, grade
}' scores.txt
3. 结合外部命令
# 结合 shell 变量
name="admin"
awk -v user="$name" '$1 == user {print $3}' users.txt# 调用系统命令(system)
awk '{if ($3 > 100) system("echo Alert: " $1)}' data.txt
4. 自定义函数
awk '
function add(a, b) {return a + b
}
{print add($1, $2)
}' numbers.txt

五、实战场景示例

1. 分析 Nginx 访问日志
# 统计访问量前10的IP
awk '{print $1}' access.log | sort | uniq -c | sort -nr | head -n 10# 直接用 AWK 实现
awk '{ip_count[$1]++} END {for (ip in ip_count) print ip_count[ip], ip}' access.log | sort -nr | head -n 10
2. 提取特定时间段日志
# 提取 2023-10-01 10:00 到 11:00 的日志
awk '/\[01\/Oct\/2023:10:00:/, /\[01\/Oct\/2023:11:00:/' access.log
3. 生成格式化报告
awk -F ',' 'BEGIN {print "Name,Total"}
{total = $2 + $3 + $4print $1 "," total
}' students.csv

六、常用技巧

  1. 跳过标题行
    awk 'NR > 1 {print $1}' data.csv
    
  2. 修改输出分隔符
    awk -v OFS='\t' '{print $1, $3}' file.txt  # 输出制表符分隔
    
  3. 处理多文件
    awk '{print FILENAME, $0}' file1.txt file2.txt  # 输出时包含文件名
    

七、性能优化

  • 避免频繁打印:减少 print 次数,尽量在 END 块输出结果。
  • 预处理大文件:使用 grepsed 先过滤数据,再用 AWK 处理。
  • 简化正则表达式:复杂的正则表达式会显著降低处理速度。

AWK 是文本处理的瑞士军刀,掌握后可高效处理日志、报表等结构化数据。结合 man awkinfo awk 查阅完整文档,可进一步探索其高级功能(如多维数组、位操作等)。

http://www.dtcms.com/wzjs/451778.html

相关文章:

  • 福州建站模板厂家百度搜索排名服务
  • 网站建设实训日志亚洲足球最新排名
  • 文网站建设服务费记入什么科目营销网络推广
  • 有没有做网站的高手外贸营销渠道
  • 中国最火的网站线上推广怎么做
  • 做塑胶网站需要什么天津网站建设优化
  • 微网站矩阵怎么做网络推广培训班哪家好
  • 绥化市新闻最新消息新网站怎么做优化
  • wordpress推荐适合seo的主题seo面试常见问题及答案
  • 水利部建设与管理司举报网站网络营销策划怎么写
  • 东昌府聊城做网站费用北京网络优化
  • iis7架设网站宁波网站建设公司哪家好
  • 做电影网站要不要收费新闻危机公关
  • 下载图片的网站建设百度高级搜索
  • 展示型网站建设流程图免费网站建设哪家好
  • idc服务器租赁优化营商环境应当坚持什么原则
  • 做二手房比较好的网站有哪些互联网推广与营销
  • 计算机网站建设实训总结广告投放平台
  • 提供网站建设公司报价自媒体发布软件app
  • 长沙网站建设哪家强一键优化软件
  • 网站ppt怎么做品牌运营方案
  • 做视频在哪个网站收益高百度指数下载
  • 建网站用自己的主机做服务器护肤品推广软文
  • 网站被谷歌降权盐城seo网站优化软件
  • 网站二级域名怎么设置最新seo课程
  • wordpress ftp上传插件大侠seo外链自动群发工具
  • 网站流seo前景
  • 重庆购物狂论坛广州seo网站服务公司
  • 建设牌安全带官方网站福建seo优化
  • 三明市建设局网站官网免费网站提交入口