NET25_第6周作业

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

(1)
cp /etc/rc.d/rc.sysinit /tmp
cd /tmp
vim rc.sysint
vim命令::%s/\(^[[:space:]]\)\+/#\1/g

(2)
cp /etc/rc.d/rc.sysinit /tmp
cd /tmp
sed -i 's/^\([[:space:]]\+\)/#\1/g' rc.sysinit

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

(1)
cp /boot/grub/grub.conf /tmp
cd /tmp
vim grub.conf
vim 命令 :%s/^[[:space:]]\+//g

(2)
cp /boot/grub/grub.conf /tmp
cd /tmp
sed -i 's/^[[:space:]]\+//g' grub.conf

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

(1)
vim rc.sysinit
vim 命令  :%s/^#[[:space:]]\+//g

(2)
sed -i 's/^#[[:space:]]\+//g' rc.sysinit

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

(1)
vim grub.conf
vim 命令  :1,3 s/^/#/g

(2)
sed -i '1,3 s/^/#/g' grub.conf

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

(1)
vim /etc/yum.repos.d/CentOS-Media.repo
vim 命令 :/gpgcheck/,/enabled/  s/0$/1/g

(2)
sed -i '/gpgcheck/,/enabled/ s/0$/1/g' /etc/yum.repos.d/CentOS-Media.repo

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

mkdir /backup
crontab -e
0 */4 * * * cp -r /etc /backup/etc-$(date +%Y%m%d%H%M)

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

mkdir -p /backup/messages_logs/
crontab -e
0 0 * * 2,4,6 cp /var/log/messages /backup/messages_logs/messages-$(date +%Y%m%d)

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

mkdir /stats
crontab -e
0 */2 * * * grep -i '^s' /proc/meminfo > /stats/memory.txt

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

crontab -e
0 */2 * * 1-5 echo 'howdy'

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

#!/bin/bash
mkdir -p /tmp/testdir-$(date +%%Y%m%d%H%M)

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

#!/bin/bash
for i in `seq 100`;do
    touch file${i}
done

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

#!/bin/bash
declare -i i lines
i=2
lines=$(cat /etc/passwd | wc -l)
while [ $i -le $line ];do
    sed -n "${i}p" /etc/passwd | awk -F':' '{print $1}'
    i=$(($i+2))
done

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

#!/bin/bash
for i in `seq 10 19`;do
    useradd -p user${i} user${i}
done

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

#!/bin/bash
for i in `seq 10 19`;do
    touch /tmp/file${i}
done

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

#!/bin/bash
for i in `seq 10 19`;do
    chown user${i}:user${i} /tmp/file${i}
done

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

(0)
N25_随心N25_随心
上一篇 2017-03-15
下一篇 2017-03-15

相关推荐

  • OpenSSL

    三个组件: openssl: 多用途的命令行工具; libcrypto: 加密解密库; libssl:ssl协议的实现; PKI:Public Key Infrastructure CA RA CRL 证书存取库  建立私有CA: OpenCA openssl  证书申请及签署步骤: 1、生成申请请求; 2、RA核验; 3、CA签署; 4…

    Linux干货 2015-03-21
  • 从Linux小白到大牛——与狼共舞的日子2

    马哥教育网络班21期+第2周课程练习 1、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。 cp:copy,复制文件 cp SRC DEST   SRC为文件     如果目录不存在:新建DEST,并将SRC中内容填充至DEST中     如果目…

    Linux干货 2016-07-17
  • linux 基础3

    linux 基础3

    Linux干货 2018-03-25
  • 生产环境网卡绑定汇总(bonding,team)

    生产环境网卡绑定汇总 1 什么是bonding,team?   1.1 bonding,team简介    在了解正式的概念之前,我们先从不太专业的角度取解释这两个名词。    所谓bonding就是联结。以下是来自柯林斯英汉双解大词典对于bonding的解释。    the proces…

    Linux干货 2017-05-07
  • 【LINUX编译安装程序】Centos7.4编译安装httpd 2.4.29

    举例:Centos7.4编译安装httpd 2.4.29

    Linux干货 2018-03-17
  • 文件系统的挂载、usb设备光盘的使用

    一、     文件系统的挂载mount: 1.       挂载命令mount使用: (1)挂载: 将额外文件系统与根文件系统某现存的目录建立起关联关系,进而使得此目录做为其它文件访问入口的行为,挂载点下原有文件在挂载完成后会被临时隐藏 (2) 卸载:为解除此…

    Linux干货 2016-08-29

评论列表(1条)

  • 马哥教育
    马哥教育 2017-03-30 14:08

    测试了大部分代码,功能都没有问题,但希望今后将代码执行结果也直观的展现在文章中,再接再励 。