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

网站制作素材代码wordpress rt 15主题

网站制作素材代码,wordpress rt 15主题,wordpress密码查看,曲周企业做网站推广一、AWK 1.1 简介 AWK是Linux中重要的文本处理工具Linux三剑客只一处理的对象可以是一个具体的文件#xff0c;也可以是一个命令的执行结果AWK按行读取文件#xff0c;将每一行视为一条记录 案例一#xff1a;获取系统中每个用户的uid 方法一#xff1a;cat /etc/passwd |…一、AWK 1.1 简介 AWK是Linux中重要的文本处理工具Linux三剑客只一处理的对象可以是一个具体的文件也可以是一个命令的执行结果AWK按行读取文件将每一行视为一条记录 案例一获取系统中每个用户的uid 方法一cat /etc/passwd | awk -F : {print $3} 方法二awk -F : {print $3} /etc/passwd 案例二显示root用户的家目录 方法一head -n1 /etc/passwd | awk -F : {print %6} 方法二grep ^root\ /etc/passwd | awk -F : {print $6} 1.2 awk的基本格式 awk [选项] 模式{动作} 文件 选项 -F 分隔符 : 用什么字符将这行内容分成一段一段的模式在处理一行之前先要判断的条件 如果条件满足就处理这行否则直接开始读取下一行如果不设置条件则处理文件中的每一行动作模式中的条件在满足的情况下对这行内容执行的操作 awk用来表示每一段的方法 $1第一个字段$2第二个字段$3第三个字段$NF表示每行的最后一个字段$0表示一整行 案例 1、获取每行的最后一个字段 awk -F / {print $NF}‘ /etc/passwd’ 2、显示系统中的全部用户名 awk -F : {print $1} /etc/passwd 3、显示系统中的前三个用户 awk -F  : NR3{print $1} /etc/passwd NR【Number of Record】awk的内置变量表示正在读取的是第几条记录 当读取第一行内容的时候NR的值是1当读取第二行的时候NR的值是2依次类推每读取一行内容NR的值自动加1 1.3 概念 记录文件中的一行就是一条记录 awk在工作的时候每次会读取一条记录每读取一条NR值加1字段一行被分隔的多个部分一个部分就是一个字段分隔符指定用什么来将这个记录分成一段一段的 案例 1、仅显示/etc/passwd中的第三行内容 awk -F : NR3 {print $0} /etc/passwd 2、输出系统中每个用户的姓名以及对应的shell类型 awk -F : {print $1,shell is ,$NF} /etc/passwd 注意输出多个字段的情况下多个字段中间用逗号分隔 1.4 变量 FS表示字段分隔符默认是任何空格NF表示字段数当前这个记录中字段的个数NR表示记录数在执行过程中对应于当前的行号OFS表示输出域分隔符ORS表示输出记录分隔符默认值是一个换行符RS表示记录分隔符默认是一个换行符 案例 1、输出3-5行的用户姓名、和shell类型 方法一awk -F : NR3NR5{print $1,$NF} /etc/passwd 方法二head -n5 /etc/passwd | tail -n3 | awk -F : {print $1,$NF} 2、获取ens33的IP地址 方法一ip addr show ens33 | grep inet\ | awk -F {print $2} | awk -F / {print $1} 方法二ip addr show ens33 | awk -F NR3{print $2} | awk -F / {print $1} 方法三ip addr show ens33 | awk -F [/ ] NR3{print $3} 3、统计/tmp/a.txt 中每行有多少个单词 awk -F {print 第,NR,行有,NF,单词} /tmp/a.txt 1.5 awk结合正则表达式 1在awk中进行搜索操作 格式awk -F : /过滤的内容/{print xxx} 案例显示tom用户的uid awk -F : /tom {print $3} /etc/passwd 2awk和^的结合使用 案例/etc/passwd匹配以root为开头的行打印整条记录 awk -F : /^root\/{print $0} /etc/passwd 3awk和$的结合使用 案例/etc/passwd匹配以bash为结尾的行打印整条记录 awk -F : /bash$/{print $0} passwd 4awk和.的结合使用 案例/etc/passwd匹配以r和t之间有两个字符的行打印整条记录 awk -F : /r..t/{print $0} /etc/passwd 5awk和.*的结合使用 案例/etc/passwd匹配以r和t之间有任意字符的行打印整条记录 awk -F : /r.*t/{print $0} /etc/passwd 6指定多个分隔符 指定单个分割符-F xxx指定多个分隔符-F [xxx]分隔符中如果有空格和其他符号同时作为分隔符那么[ ]中空格必须在最后指定多个连续的符号作为分隔符可以用 awk -F [/-] {print $1}  1.txt 1.6 awk练习 1在passwd文件中找用户名是以a为开头的行 awk -F : $1~/^a/{print $0}  /etc/passwd 2倒数第二列$(NF-1)这一列查找匹配以tom结尾的行 awk -F : $(NF-1)~/tom$/{print NR,$0} /etc/passwd 3$3这一列查找匹配以a或b或s开头的行 方法一awk -F : $3~/^(a|b|s)/{print $0}  /etc/passwd 方法二awk -F : $3~/^[abs]/{print $0}  /etc/passwd 4取ens33网卡ip地址 方法一纯grep方法 ip addr show ens33 | grep -oP (?inet\s)\d(\.\d){3} 方法二grep结合awk ip addr show ens33 | grep inet\ | awk -F {print $2} | awk -F / {print $1} 方法三纯awk ip addr show ens33 | awk -F [/ ] NR3{print $3} ip addr show ens33 | awk -F [/ ]  /inet\/{print $3} ip addr show ens33 | awk -F [/ ]  $NF~/ens33$/{print $3} 5找出/etc/passwd的第六个字段以:为分隔符以/sbin开头的行 awk -F : $6~/^\/sbin/{print $0} /etc/passwd 6找出/etc/passwd的第六个字段以:为分隔符不是以/sbin开头的行 awk -F : $6!~/^\/sbin/{print $0} /etc/passwd 1.7 awk的表达式 序号符号含义举例1小于【处理数字】NR72大于【处理数字】NR53等于【处理数字】NR34!不等【处理数字】NR!65大于等于【处理数字】NR36小于等于【处理数字】NR47 ~用于进行正则表达式匹配【处理字符串】$3~/^abc/8!~用于进行正则表达式不匹配【处理字符串】$3!~/^abc/ 1.8 awk模块 awk的模块包含两个 BEGIN: END: BEGIN模块 用于定义一个动作用{ }表示要执行的动作这个动作要在读取文件之前执行这里的动作大多要用于定义变量包括内置变量自定义变量 END模块 用于定义一个动作用{ }表示要执行的动作这个动作是awk将文件中的内容读取完成之后而且处理完成以后END模块才会执行这里的动作通常用于输出一个结果 格式 awk BEGIN{}END{} fileName工作过程 step 1执行BEGIN中的操作通常是定义变量内置变量、自定义变量step 2BEGIN中的操作执行完成以后读取一行fileName文件中的内容然后执行一次中间的动作然后重复读取fileName中的每行内容并重复执行中间的动作step 3fileName中的内容全部读取完成后执行END中的操作通常是用于输出 案例 1、输出每个用户的用户名、id、shell 方法一awk -F : {print $1,$3,$NF} /etc/passwd 方法二awk BEGIN{FS:}{print $1,$3,$NF} /etc/passwd 2、统计 /etc/passwd 中有多少行 awk BEGIN{num0}{num1}END{print num} /etc/passwd 3、统计a.txt中有多少个单词 方法一awk BEGIN{sum0}{sumNF}END{print sum} a.txt 方法二                 cat 1.txt | tr \n 2.txt                 awk {num1}END{print num} 2.txt                 tr \n 作用每个空格字符替换为换行符 4、统计系统中有多少用户的shell类型是/bin/bash awk BEGIN{FS:; sum0}$NF~/\/bin\/bash$/{sum1}END{print sum} /etc/passwd 5、输出前三个用户的用户名、id、shell awk BEGIN{FS:}NR3{print $1,$3,$NF} /etc/passwd 注意通常每种都有默认值 FS默认值就是空格OFS默认值就是空格ORS默认是换行符RS默认是换行符 案例 1、在读取文件前输出一个提示信息 awk BEGIN{print start to awk process...}{print $0} /etc/passwd 2、在读取文件前和后分别输出一个提示信息 awk BEGIN{print start to awk process...}{print $0}END{print over.....}  /etc/passwd 3、统计文件中的空白行的行数 方法一grep ^$ a.txt | wc -l 方法二awk BEGIN{num0}/^$/{num1}END{print num} a.txt 方法三awk /^$/{num1}END{print num} a.txt 4、统计文件中以#开头的行的行数 awk BEGIN{num0}/^#/{num1}END{print num} a.txt awk /^#/{num1}END{print num} a.txt 5、统计系统中uid大于大于499的用户个数 awk BEGIN{num0}$3499{num1}END{print num} /etc/passwd 6、计算1~100的累加和 seq 100 | awk BEGIN{sum0}{sum$0}END{print sum} 7、将用户信息格式中的密码占位符和描述信息去除掉 awk BEGIN{FS:;OFS:}{print $1,$3,$4,$6,$7} /etc/passwd 1.9 awk 数组 变量一个变量只能存储一个值 nametomage20 数组一组相同数据类型的集合 userList [tom,jerry,bajie,wukong]三个概念 数组名数组的索引数组的索引对应的值 定义数组 数组名[索引]值 案例: 数组名userList 定义数组元素和值 userList[1]tomuserList[2]jerryuserList[3bokuserList[4]bajieuserInfo[name]tomuserInfo[age]33userInfo[addr]hebei 获取数组中的值 userList[2]userInfo[name] 数组的索引 数字、数字索引的变号是从0开始字母字符串 案例 [rootansible tmp]# awk BEGIN{stu[0]tom;stu[1]jerry;stu[2]jack;print stu[1]} jerry[rootansible tmp]# awk BEGIN{stu[0]tom;stu[1]jerry;stu[2]jack;print stu[2]} jack[rootansible tmp]# awk BEGIN{stu[name]tom;stu[age]20;stu[tel]1308888123;print stu[age]} 20[rootansible tmp]# awk BEGIN{stu[name]tom;stu[age]20;stu[tel]1301111;print stu[tel]} 1301111 1.10 数组的循环遍历 格式for(变量 in 数组名)变量中存储的是数组的索引 [roottest ~]# awk BEGIN{userList[0]tom;userList[1]jerry;userList[2]jack} END{for(var in userList) print 第,var11,个用户是,userList[var]} mypwd 第 1 个用户是 tom 第 2 个用户是 jerry 第 3 个用户是 jack[roottest ~]# awk BEGIN{info[name]tom;info[age]25;info[addr]beijing} END(for var in info) print var,is,info[var]} mypwd age is 25 addr is beijing name is tom[roottest ~]# awk BEGIN{info[www.baidu.com]5;info[ftp.baidu.com]11;info[mail.baidu.com] 9;info[cdn.baidu.com]23}END(for(var in info) print var,is,info[var]} mypwd ftp.baidu.com is 11 cdn.baidu.com is 23 www.baidu.com is 5 mail.baidu.com is 9 案例分析httpd的日志文件对各个域名的访问次数进行排序 http://www.baidu.com/index.html http://mail.baidu.com/index.html http://ftp.baidu.com/index.html http://ftp.baidu.com/index.html http://www.baidu.com/index.html http://ftp.baidu.com/index.html http://mail.baidu.com/index.html http://mail.baidu.com/index.html http://www.baidu.com/index.html http://ftp.baidu.com/index.html http://www.baidu.com/index.html http://www.baidu.com/index.html http://ftp.baidu.com/index.html http://ftp.baidu.com/index.html 获取每个域名的出去次数 [rootansible ~]# awk -F / {list[$2]}END{for(site in list)print site, list[site]} web.log ftp.baidu.com 6 www.baidu.com 5 mail.baidu.com 3 基于域名的出现次数进行排序 方法一: [rootansible ~]# awk -F / {list[$2]}END{for(site in list)print site,list[site]} web.log | sort -n -k2 -r ftp.baidu.com 6 www.baidu.com 5 mail.baidu.com 3方法二: [rootensible ~]# awk -F / {print $2} web.log | sort | uniq -c | sort -k1 -n 3 mail.baidu.com 5 www.baidu.com 6 ftp.baidu.com 案例分析/var/log/secure日志显示用户从哪些IP登录系统并对ip出现次数进行排序 [roottest log]# awk -F (from|port) /Accepted password/{ip[$2]1}END{ for(var in ip)print var,ip[var]} log1.txt | sort -t -k2 -r -n 192.168.31.100 36 192.168.1.123 24 192.168.1.5 2 192.168.1.100 2 192.168.1.8 1 案例统计每天产生多少条日志信息 awk {day[$1,$2]}END{for(var in day)print var,day[var]} log1.txt 案例统计9月13日的每小时产生多少条日志 awk -F [: ] $213(date[$3]}END{for(var in date)print var,date[var]} log1.txt 案例统计9月13日的12点到14点期间一共产生多少条日志 awk -F [: ] $213$312$314{sum1}END{print sum} log1.txt 案例统计9月13日的12点到14点期间用户登录过多少次 awk -F [: ] /Accepted password/$213$312$314{sum}END{print sum} log1.txt 案例统计9月13日的12点到14点期间用户通过哪些IP登录过分别显示登录过多少次 awk -F [: ] $0~/Accepted password/$213$312$314{ip[$3]}END{for (var in ip)print var,ip[var]} log1.txt 192.168.1.123 2 192.168.1.100 5 192.168.1.8 3 sort命令 作用排序选项 -n基于数字进行排序-r逆序排序-k#根据那个字段进行排序
http://www.w-s-a.com/news/603520/

相关文章:

  • 网站名称填写什么广告网络推广怎么做
  • 做网站架构需要注意什么百度竞价排名推广
  • 网站接口设置地税局内网网站建设
  • 谷歌提交网站入口wordpress前台自动登录
  • 规模以上工业企业的标准是什么洛阳霞光seo网络公司
  • 怎样用文本建一个网站做美容美发学校网站公司
  • 南宁企业网站建设制作芜湖网站建设推广
  • 泉州市建设局网站公示深圳建站公司好坏
  • 如何搭建网站教程一个人制作网站
  • 网站开发专业都有哪些课程广州安全教育平台账号找回
  • 网站调整方案适合平面设计师的网站
  • 免费服务器建立网站用html5做的旅游网站代码
  • 学校英语网站栏目名称WordPress禁用邮件注册
  • 手机qq网页版网站沧州手机网站开发
  • 深圳罗湖网站设计公司建设的网站属于无形资产吗
  • 网站开发python西安网站建站品牌
  • 网站开发商标属于哪一类做网站还有钱赚吗
  • 做设计的搜素材上什么网站好设计公司画册设计哪家好
  • 视频网站开发需要什么语言做ui设计一年后年薪多少
  • 网站服务器维护费用统一企业官方网站
  • 网站如何调用手机淘宝做淘宝客呼和浩特网站运营公司
  • 做推广可以上那些网站网页游戏排行榜2014前十名
  • 国外网站备案流程企业网站 流程
  • 重庆网站建设letide童程童美少儿收费价目表
  • 苏州建站仿站东莞排名推广
  • 大中小网站的区分wordpress个人主页主题
  • 商务网站建设的可行性分析包括小程序源码网免费
  • 永州网站建设收费标准重庆网站建设公司夹夹虫专业
  • python做网站多少钱wordpress 2.8
  • 深圳网站平台网站开发工作程序怎么写