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

银川网站建设公司排名html网页设计网站

银川网站建设公司排名,html网页设计网站,视频推广网站,广西手机响应式网站建设公司一 概述 awk命令是一种分析和处理文本文件的编程工具。它的功能非常强大,是Linux/Unix系统中最常用的过滤工具。 awk内建变量: NF 整个数据行(即$0)拥有的字段总数 NR 当前awk所处理的数据行的编号 $0 当前awk所处理的数据行 $1 数据行的第1个字段 $2 数…

一 概述

awk命令是一种分析和处理文本文件的编程工具。它的功能非常强大,是Linux/Unix系统中最常用的过滤工具。
awk内建变量:
NF 整个数据行(即$0)拥有的字段总数
NR 当前awk所处理的数据行的编号
$0 当前awk所处理的数据行
$1 数据行的第1个字段
$2 数据行的第2个字段
$NF 数据行的最后1个字段

注意:
和shell脚本中的变量不同,awk中的变量可以直接使用,不需要加上$符号

二 awk简单实例

2.1 查看服务器登入者的用户名和IP地址

last | awk '{print $1 "\t" $3}'
last -n 10 | awk '{print $1 "\t" $3}'

2.2 查找root用户的默认shell
方法一:

awk -F: '/^root/ {print $7}' /etc/passwd
执行结果为:/bin/bash

方法二:

awk -F: '{if ($1 == "root") print $7}' /etc/passwd
执行结果为:/bin/bash

上述两个命令的执行结果相同,其中:
-F:设置分隔符为冒号,默认分割符为空格或者[Tab]
‘/^root/ {print $7}’:通过正则表达式匹配以root开头的行,匹配成功后打印该行的第7列,即第7个字段
方法二中使用了条件语句,为了实际编程需要,awk命令中可以嵌入条件语句,条件语句的关键字是if
下图所示为条件语句的运算符:

>	大于
<	小于
>=	大于或等于
<=	小于或等于
==	等于
!=	不等于

2.3 从详细路径中提取文件名

echo "/root/dummy_app/tools/cloud/make_update_package.sh" | awk -F/ '{print $NF}'

-F:设置分隔符为正斜杠/,默认分割符为空格或者[Tab]
$NF:表示数据行的最后1个字段
上述命令的执行结果为:make_update_package.sh
2.4 计算某个目录下所有文件大小的总和

ls -l /boot | grep ^- | awk 'BEGIN{totalsize = 0;} {totalsize += $5;} END{print totalsize}'

从上述语句可以看出:awk中的变量可以直接使用,不需要加上$符号
ls -l /boot | grep ^-:表示只查找普通文件
ls -l /boot | grep ^d:表示只查找目录
BEGIN:表示awk在开始处理数据行之前,先执行BEGIN关键字指定的操作,即BEGIN关键字后面花括号里的内容,通常来说都是些打印标题信息、初始化变量等操作
END:表示awk在处理完所有数据行之后,再执行END关键字指定的操作,即END关键字后面花括号里的内容,通常来说都是些打印结束栏、输出最终结果等操作
注意:
无论是BEGIN还是END,它们都只会执行一次
2.5 解析配置文件-实例一
下图所示为配置文件详细内容:

index_file          index_file
payload_type        update_full
system_version      v0.1
kernel_version      v4.19.115
digest_type         md5
private_pem         /etc/menxian_private.pem

解析脚本如下所示:

#! /bin/sh
package_config=$1index_file=$(awk '/^index_file/ {print $2}' $package_config)
payload_type=$(awk '/^payload_type/ {print $2}' $package_config)
system_version=$(awk '/^system_version/ {print $2}' $package_config)
kernel_version=$(awk '/^kernel_version/ {print $2}' $package_config)
digest_type=$(awk '/^digest_type/ {print $2}' $package_config)
private_pem=$(awk '/^private_pem/ {print $2}' $package_config)
echo $index_file
echo $payload_type
echo $system_version
echo $kernel_version
echo $digest_type
echo $private_pem

运行脚本并且查看结果

./parse.sh package_config
index_file
update_full
v0.1
v4.19.115
md5
/etc/menxian_private.pem

我们抽取一行进行分析:

index_file=$(awk '/^index_file/ {print $2}' $package_config)

/^index_file/:表示匹配以index_file开头的行
/index_file$/:表示匹配以index_file结尾的行
$():将整个命令执行结果,赋值给变量

需要注意的是:$()会将多行的执行结果合并成一行,然后赋值给变量
咱们可以使用如下命令进行测试:

result=$(df -hT); echo $result;

2.6 解析配置文件-实例二
下图所示为配置文件详细内容:

[payload_type]
update_full[system_version]
v1.4.0[kernel_version]
v4.19.115[digest_type]
md5

解析脚本如下所示:

#! /bin/sh
configfile=$1payload_type=$(awk '/\[payload_type]/ {getline; print $1}' $configfile)
system_version=$(awk '/\[system_version]/ {getline; print $1}' $configfile)
kernel_version=$(awk '/\[kernel_version]/ {getline; print $1}' $configfile)
digest_type=$(awk '/\[digest_type]/ {getline; print $1}' $configfile)
echo $payload_type
echo $system_version
echo $kernel_version
echo $digest_type

运行脚本并且查看结果

./parse.sh payload_desc
update_full
v1.4.0
v4.19.115
md5

我们同样抽取一行进行分析

payload_type=$(awk '/\[payload_type]/ {getline; print $1}' $configfile)

/[payload_type]/:表示匹配包含[payload_type]的行,在awk中[符号需要使用\[进行转义,]符号就不需要

http://www.15wanjia.com/news/179851.html

相关文章:

  • 个人网站开发如何赚钱吗专业ppt代做
  • 努力把网站建设成为wordpress固定链接标签加上页面
  • 家电维修怎么自己做网站制作华为手机网站建设规划书
  • 鄂州网站设计制作大数据网站开发
  • 做慕墙上什么网站好找事做专门做眼镜的网站
  • 做网站asp网站备案幕布照片ps
  • 无忧主机建站的过程中国网站排名站长之家
  • vps 内存影响 网站郑州手工网站建设
  • 公司做网站费用入什么科目数据展示网站
  • 郑州优化网站收费标准中天建设有限公司官方网站
  • 网站推广计划至少包括网页制作软件属于应用软件吗
  • 成都网站制作机构给wordpress加相册
  • 服务类型网站开发需要哪些技术扬州天猫网站建设
  • 做公司网站的公司wordpress使用ajax提交数据
  • 个人可以做外贸的网站淄博网站制作哪家公司好
  • windows网站建设教程视频c 做网站 知乎
  • 做外汇有哪些正规的网站上海个人网站建立
  • 网上接工程活做的网站绿蜻蜓建设管理有限公司网站
  • 做互联网小程序 和网站有没有前景有口碑的南通网站建设
  • 程序员做网站类网站医院官方网站建设
  • 建设银行网站官方网站怎样增加网站浏览量
  • 有什么做动图比较方便的网站三种WordPress引流方法
  • 网站申请要多少钱贵州安顺网站建设
  • 景安网站备案要多久网站添加新关键词
  • wordpress做视频网站吗宣传手册设计
  • 仓库改造类网站怎么做河南视频网站建设公司
  • 网站推广方案策划工商网站查询个人信息
  • 高端网站定制开发设计制作做网站都要多少钱
  • soho的外贸网站搜索引擎yandex入口
  • 怎么增加网站反链深圳东门老街