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

现货黄金什么网站可以做直播汕头网站建设开发

现货黄金什么网站可以做直播,汕头网站建设开发,太仓网站制作,小区网站建设文本三剑客awk: grep 查 sed 增删改查 主要:增改 awk 按行取列 awk awk默认的分隔符:空格,tab键,多个空格自动压缩为一个。 awk的工作原理:根据指令信息,逐行的读取文本内容,然…

文本三剑客awk:

grep 查

sed 增删改查 主要:增改

awk 按行取列

awk

awk默认的分隔符:空格,tab键,多个空格自动压缩为一个。

awk的工作原理:根据指令信息,逐行的读取文本内容,然后按照条件进行格式输出。

awk的选项:

-F 指定分隔符,默认就是空格

-v 变量赋值

内置变量:

$数字 按行需要取出的第几个字段。

$0 打印所有,展示所有的文本内容(默认)

NR 需要处理的行号

NF 处理行的字段个数,

$NF 当前行的最后一个字段

FS FS和F是一样的,都是指定分隔符,

-F: FS=":"

OFS 指定输出内容的分隔符

RS 行分隔符,可以根据RS的设置把文件内容切割成多个记录,也可以改变行的分隔符,默认是\n,回车,换行。

命令格式

awk -F '操作符 {动作}' 处理对象

-F 指定分隔符,如果是空格可以不加

动作:默认就是打印。

打印行号
[root@localhost opt]# awk '{print NR}' awk.txt 
1
2
3
4
[root@localhost opt]# awk '{print NR,$0}' awk.txt 
1 one two   three
2 four  five   six
3 seven eight   nine
4   ten
打印指定行
[root@localhost opt]# awk 'NR==3{print}' awk.txt 
seven eight nine
[root@localhost opt]# awk 'NR==2,NR==4{print}' awk.txt  #打印2-4行
four  five   six
seven eight nineten
[root@localhost opt]# awk 'NR==2;NR==4{print}' awk.txt      #打印2和4行
four  five   sixten

取第三行的第三列:

[root@localhost opt]# cat awk.txt | awk 'NR==3{print $3}'
hpc
[root@localhost opt]# cat awk.txt | awk 'NR>=2{print $3}'
3
hpc

如何打印奇偶行

偶数行

[root@localhost opt]# awk 'NR%2==0{print}' awk.txt 
four  five   sixten

奇数行:

[root@localhost opt]# awk 'NR%2==1{print}' awk.txt 
one two   three
seven eight nine
awk怎么使用文本过滤
[root@localhost opt]# awk '/root/{print}' /etc/passwdroot:x:0:0:root:/root:/bin/bash
operator:x:11:0:operator:/root:/sbin/nologin
[root@localhost opt]# awk '/^root/{print}' /etc/passwd
root:x:0:0:root:/root:/bin/bash
[root@localhost opt]# awk '/bash$/{print}' /etc/passwd
root:x:0:0:root:/root:/bin/bash
zhang:x:1000:1000:zhang:/home/zhang:/bin/bash
dn:x:1001:1001::/home/dn:/bin/bash

使用BEGIN模式打印

awk 'BEGIN{};{};END{}' 文件

BEGIN{...}预先的条件,指定awk命令前的初始化操作

{...}处理条件,如何多初始值进行操作

END{...}处理完之后的操作,一般都是打印。

[root@localhost opt]# awk 'BEGIN{x=0};{x++};END{print x}' awk.txt 
4 

取幂运算

[root@localhost opt]# awk 'BEGIN{print 3**3}'
27
-v 变量赋值
[root@localhost opt]# vim awk.sh
read -p "请输入一个数:" a
read -p "请输入$a的幂:" b
num=$(awk -v a="$a" -v b="$b" 'BEGIN{print a^b}')
echo $num
[root@localhost opt]# sh awk.sh 
请输入一个数:2
请输入2的幂:3
8
FS

用-v来进行赋值

[root@localhost opt]# awk -v FS=":" -v OFS -v OFS="==" '{print $1,$3}'  /etc/passwd
RS
[root@localhost opt]# echo $PATH | awk -v RS=":" '{print $1}'
/usr/local/sbin
/usr/local/bin
/usr/sbin
/usr/bin
/root/bin
awk的条件判断打印
[root@localhost opt]# awk -F: '$3>999{print $0}' /etc/passwd

第三列等于1000

[root@localhost opt]# awk -F: '$3==1000{print $0}' /etc/passwd
zhang:x:1000:1000:zhang:/home/zhang:/bin/bash
面试题:

awk的三元表达式:

if else语句

num=($3>$4)?$3:$4;

? if

: else

; fi

[root@localhost opt]# awk -F: '{num=($3>$4)?$3:$4;{print num,$0}}' /etc/passwd
if ($3>$4)
then
echo $3
else
echo $4
fi
awk的精确筛选:

$n( > < == ) 用于比较数值

$n~"字符串" 该字符包含某个字符串

$n!~"字符串" 该字段不包含某个字符串

$n=="字符串" 该字段等于这个字符串

$n!=="字符串" 该字符不等于某个字符串

$NF 代表最后一个字符串

打印第7列包含bash这个字段的行,取的是行的第一列和最后一列,以:作为分隔符。

[root@localhost opt]# awk -F: '$7~"bash" {print $1,$NF}' /etc/passwd
root /bin/bash
zhang /bin/bash
dn /bin/bash

== 是精确查找

~ 是模糊查找

逻辑关系

且和或:

/etc/passwd 第一列等于dn且第七列等于/bin/bash

[root@localhost opt]# awk -F: '($1=="dn")&&($NF=="/bin/bash") {print $1,$NF}' /etc/passwd
dn /bin/bash
[root@localhost opt]# awk -F: '($1=="ntp")||($NF=="/bin/bash") {print $1,$NF}' /etc/passwd
root /bin/bash
ntp /sbin/nologin
zhang /bin/bash
dn /bin/bash

curl是一个功能强大的命令

获取和发送数据

curl www.baidu.com

curl 192.168.60.20

获取网页内容并且输出

-0 下载文件到本地

-o 将文件下载到指定的路径

-x 发送post请求

-i 可以获取web软件的版本(服务端没有隐藏版本号)

awk按行取列

awk的精确筛选

awk的运算符

练习

取小数点几位以及小数运算怎么取整数。

[root@localhost opt]# num=$(awk 'BEGIN{printf "%.2f", 1.222+2.222}')
[root@localhost opt]# echo $num
3.44
[root@localhost opt]# num=$(awk 'BEGIN{printf "%.F", 1.222+2.222}')
[root@localhost opt]# echo $num
3

显示有空格有点做为分隔符的第二列

[root@localhost opt]# cat awk1.txt | awk -F'[ .]+' '{print $2}'
www
mail
ftp
linux
blog

统计/etc下文件的总大小?awk实现

[root@localhost opt]# ll /etc/ | awk '/^-/{print sum+=$5} END{print "文件的总大小是:"sum/1024"M"}'
1070299
文件的总大小是:1045.21M

作业:监控内存,cpu和硬盘的根目录,超过80%提示用户,写成函数库的形式,每天早上的8.50分,执行一次脚本。

[root@localhost opt]# vim hanshuku.sh
. /opt/head.sh
cpu=$(cpu)
neicun=$(neicun)
gengmulu=$(gengmulu)
echo $cpu
echo $neicun
echo $gengmulu
[root@localhost opt]# vim head.sh 
cpu () {
sum=$(top -b -n 1 | awk 'NR==3{printf "%.F",$2+$4}')
if [[ $sum -ge 80 ]]
then
echo "cpu使用超过80%了,已经有了$sum%。"
else
echo "cpu使用了$sum%"
fi
}
neicun () {
num=$(free -m | awk 'NR==2{printf "%.F",$3/$2*100}')
if [[ $num -ge 80 ]]
then
echo "内存使用超过80%了,已经有了$num%。"
else
echo "内存使用了$num%"
fi
}
gengmulu () {
c=$(df -h | awk 'NR==2{print $5}' | tr -d "%")
if [[ $c -ge 80 ]]
then
echo "硬盘使用超过80%了,已经有了$c%。"
else
echo "硬盘使用了$c%"
fi
}

运行结果:

[root@localhost opt]# sh hanshuku.sh 
cpu使用了0%
内存使用了12%
硬盘使用了27%

定时任务:

[root@localhost opt]# crontab -e
50 8 * * * sh /opt/hanshuku.sh
*/1 * * * * sh /opt/hanshuku.sh

定时任务的邮件:

[root@localhost opt]# vim /var/spool/mail/root
From root@localhost.localdomain  Mon Jun 24 16:16:01 2024
Return-Path: <root@localhost.localdomain>
X-Original-To: root
Delivered-To: root@localhost.localdomain
Received: by localhost.localdomain (Postfix, from userid 0)id 6289060B73E3; Mon, 24 Jun 2024 16:16:01 +0800 (CST)
From: "(Cron Daemon)" <root@localhost.localdomain>
To: root@localhost.localdomain
Subject: Cron <root@localhost> sh /opt/hanshuku.sh
Content-Type: text/plain; charset=UTF-8
Auto-Submitted: auto-generated
Precedence: bulk
X-Cron-Env: <XDG_SESSION_ID=261>
X-Cron-Env: <XDG_RUNTIME_DIR=/run/user/0>
X-Cron-Env: <LANG=zh_CN.UTF-8>
X-Cron-Env: <SHELL=/bin/sh>
X-Cron-Env: <HOME=/root>
X-Cron-Env: <PATH=/usr/bin:/bin>
X-Cron-Env: <LOGNAME=root>
X-Cron-Env: <USER=root>
Message-Id: <20240624081601.6289060B73E3@localhost.localdomain>
Date: Mon, 24 Jun 2024 16:16:01 +0800 (CST)
​
cpu使用了8%
内存使用了12%
硬盘使用了27%
​
http://www.ds6.com.cn/news/108395.html

相关文章:

  • 泉州专业做网站中国互联网域名注册服务机构
  • 国外做的好的鲜花网站网络营销推广方式案例
  • 商丘网站公司电话号码做网站公司排名
  • p2c网站方案网站收录查询代码
  • 深圳企业网站制作哪个百度推广客户端app下载
  • 网站怎么做背景图片产品推广方案ppt模板
  • 中山制作企业网站海淀区seo搜索引擎
  • 网线制作线序东莞营销网站建设优化
  • 嵩明建设局网站厦门seo新站策划
  • 那个网站做推广好nba最新消息新闻报道
  • 网站管理制度规范网络推广有效果吗
  • 长乐住房和城乡建设局网站搭建网站的步骤
  • 5x社区发源于地从这里开始网站优化排名软件
  • 忒低网站长怎么做推广吧
  • 学校网站建设报价百度客户端下载
  • 免费申请网站永久域名cpa广告联盟平台
  • 少儿英语做游戏网站推荐windows优化大师如何卸载
  • 网站手机优化如何制作自己的公司网站
  • 企业多语言网站开发semester at sea
  • wordpress 全站通知个人代运营一般怎么收费
  • 微分销代理手机优化软件排名
  • 杭州设计公司老总百度小程序seo
  • 网页如何制作出来的seo推广seo技术培训
  • 赣州做网站什么价格国外域名注册
  • 服装设计资源网站网站seo技术教程
  • 开一个网站建设公司好湖南优化电商服务有限公司
  • 做软文的网站免费检测网站seo
  • 有模板怎么做网站百度明星人气榜排名
  • 公司高端网站设计公司营销推广平台
  • 怎样做网站服务器小广告公司如何起步