马哥教育网络班20期+第6周课程练习

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

cp /etc/rc.d/rc.sysinit /tmp
sed 's/^[[:space:]]/#&/' /tmp/rc.sysinit

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

cp /boot/grub/grub.conf /tmp
sed 's/^[[:space:]]*//g' /tmp/grub.conf

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

sed 's/^#[[:space:]]\+//g' /tmp/rc.sysinit

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

sed '1,3s/.*/#&/g' /tmp/grub.conf

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

sed 's/\(enabled=|gpgcheck=\)0/\11/g' /etc/yum.repos.d/CentOS-Media.repo

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

# 通过在 /etc/crontab 文件中添加如下该行
 * */4 * * * root /bin/tar -cf /backup/etc-`date +%Y%m%d%H%M` /etc

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

# 通过在 /etc/crontab 文件中添加如下该行
 * * * * 2,4,6 /bin/tar -cf /backup/messages_logs/messages-`date +%Y%m%d` /var/log/messages

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

# 通过在 /etc/crontab 文件中添加如下该行
 * */2 * * * /bin/grep '^S' /proc/meminfo >> /stats/memory.txt

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

# 通过在 /etc/crontab 文件中添加如下该行
 * */2 * * 1-5 /bin/echo "howdy"

脚本编程练习

  1. 创建目录/tmp/testdir-当前日期时间

  2. 在此目录创建100个空文件:file1-file100

  3. 显示/etc/passwd文件中位于第偶数行的用户的用户名

  4. 创建10用户user10-user19;密码同用户名

  5. 在/tmp/创建10个空文件file10-file19

  6. 把file10的属主和属组改为user10,依次类推

#!/bin/bash
#
DIR=testdir-`date +%Y%m%d`

mkdir /tmp/${DIR}
touch /tmp/${DIR}/file{1..100}

sed -n '0~2p' /etc/passwd

for i in `seq 10 19`; do
    useradd user$i    
    echo "user$i" | passwd --stdin user$i
    touch /tmp/file$i
    chown user$i:user$i /tmp/file$i
done

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

(0)
Net20_KenNet20_Ken
上一篇 2016-08-15 12:00
下一篇 2016-08-15 12:04

相关推荐

  • yum命令的使用及磁盘管理中命令的使用方法(mkfs ,blkid,e2label等)

    yum      #cd /etc/yum.repos.d          #yum repolist(在 #cd下)其他命令在 #cd /etc/yum.repos.d运行          #yum-config-manag…

    2017-08-19
  • 9.脚本练习

    1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现;  declare -a shell     declare sum_login=0     declare sum_nologin=0     shell=($(cat /etc/pass…

    2017-09-20
  • Linux Basics-重定向与管道:第一部分

    Linux Basics-重定向与管道:第一部分 概述 本教程将介绍 Linux 中重定向标准 IO 流的基本技术。学习: 什么是重定向与标准 IO 流:标准输入、标准输出和标准错误 各种流和管道的实际应用   前提条件 你应该了解 Linux 基本知识以及拥有一个正常工作的 Linux 系统,在本文说明的实例中,我采用是CentOS 7 内核版本…

    Linux干货 2016-10-29
  • Zabbix 新版微信告警 [2017]

    Zabbix 新版微信告警 Zabbix 新版微信告警 date 2017-06-14zabbix Zabbix可以通过多种方式把告警信息发送到指定人,常用的有邮件,短信报警方式,但是越来越多的企业开始使用zabbix结合微信作为主要的告警方式,这样可以及时有效的把告警信息推送到接收人,方便告警的及时处理。 关于邮件报警可以参考: Zabbix 使用脚本发送…

    2017-06-17
  • Find工具实例

      1、显示当前系统上root、fadora或user1用户的默认shell。         [root@localhost ~]# grep -E "^(root|fadora|user1)\>"&n…

    Linux干货 2016-11-27
  • linux 简单命令

    前面介绍一些基本基础篇 后面主要介绍screen命令的用法。

    2017-11-19

评论列表(1条)

  • 马哥教育
    马哥教育 2016-08-17 14:28

    写的很好,排版也很棒,加油,所有的crontab都不对