集中练习4-bash脚本、计划任务

集中练习4-bash脚本、计划任务

1. 复制/etc/rc.d/rc.sysinit文件至/tmp目录,将/tmp/rc.sysinit文件中的以至少一个空白字符开头的行的行首加#;
“`
~]# cp /etc/rc.d/rc.sysinit /tmp/
~]# sed -i ‘s@^[[:space:]]@\# @’ /tmp/rc.sysinit
“`
2. 复制/boot/grub/grub.conf至/tmp目录中,删除/tmp/grub.conf文件中的行首的空白字符
“`
~]# cp /boot/grub/grub.conf /tmp
~]# sed -i ‘s/^[[:space:]]\+//’ /tmp/grub.conf
“`
3. 删除/tmp/rc.sysinit文件中的以#开头,且后面跟了至少一个空白字符的行的#和空白字符;
“`
~]# sed -i ‘s/^#[[:space:]]\+//’ /tmp/rc.sysinit
“`
4. 为/tmp/grub.conf文件中的前三行的行首加#号;
“`
~]# sed -i ‘1,3s/^/#/’ /tmp/grub.conf
“`
5. 将/etc/yum.repos.d/CentOS-Media.repo文件中所有的enabled=0或gpgcheck=0的最后的0修改为1;
“`
~]# sed -i -e ‘s/enabled=0/enabled=1/’ -e ‘s/gpgcheck=0/gpgcheck=1/’ /etc/yum.repos.d/CentOS-Media.repo
“`
6. 每4小时执行一次对/etc/目录的备份,备份至/backup目录中,保存的目录名为形如etc-201504020202;
“`
~]# vim backupetc.sh
#!/bin/bash
#
[ -d /backup ] || mkdir /backup &> /dev/null

mkdir /backup/etc-$(date +%Y%m%d%H%M)
cp /etc/* /backup/etc-$(date +%Y%m%d%H%M)/

~]# crontab -e
0 */4 * * * /root/backupetc.sh
“`
7. 每周2、4、6备份/var/log/messages文件至/backup/messages_logs/目录中,保存的文件名形如messages-201504020202;
“`
~]# vim backup.sh
#!/bin/bash
#
[ -d /backup/messages_logs ] || mkdir -p /backup/messages_logs
cp /var/log/messages /backup/messages_logs/messages-$(date +%Y%m%d%%H%M)

~]# crontab -e
0 0 * * 2,4,6 /root/backup.sh
“`
8. 每天每两小时取当前系统/proc/meminfo文件中的所有以S开头的信息至/stats/memory.txt文件中;
“`
~]# vim memstat.sh
#!/bin/bash
#
[ -d /stats ] || mkdir /stats
echo -e “\n##########$(date +%F-%H)##########” >> /stats/memory.txt
grep “^S” /proc/meminfo >> /stats/memory.txt

~]# crontab -e
0 */2 * * * /root/memstat.sh

“`
9. 工作日的工作时间内,每两小时执行一次echo “howdy”;
“`
~]# crontabl -e
0 9,11,13,15,17 * 1-5 /bin/echo “howdy”
“`
10. 创建目录/tmp/testdir-当前日期时间
“`
~]# mkdir /tmp/testdir-$(date +%F-%H%M)
“`
11. 在此目录中创建100个空文件;file1-file100;
“`
~]# vim craetefile.sh
#!/bin/bash
#
mkdir /tmp/testdir-$(date +%F-%H%M) && cd /tmp/testdir-$(date +%F-%H%M)
for i in `seq 1 100`;do
touch file$i
done
“`
12. 显示/etc/passwd文件中位于偶数行的用户的用户名;
“`
~]# sed -n ‘2~2p’ /etc/passwd | cut -d: -f1
“`

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/88073

(0)
N27_sapbcsN27_sapbcs
上一篇 2017-10-26 14:25
下一篇 2017-10-27 09:41

相关推荐

  • N22-第三周课堂练习

    — 1.列出当前系统上所有已经登录的用户的用户名,注意:用一个用户登录多次,则只显示一次即可。     who | awk '{print $1}' | uniq 2.取出最后登录到当前系统的用户相关信息。   last | head -n 1 3.取出当前系统上被用户当作其默认shell的最多的…

    Linux干货 2016-08-30
  • 浅谈linux基础知识(二)

    1、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示 文件管理工具:cp,mv,rm cp命令:copy 源文件,目标文件 单源复制:cp[OPTION]… [-T] SOURCE DEST 多源复制: cp[OPTION]… SOURCE… DIRECTORY cp[OPT…

    Linux干货 2016-10-12
  • Nginx反向代理的常用调度算法

    upstream 调度算法 1.rr 按客户端请求顺序把客户端的请求逐一分配到不同的后端的服务器,这相当于lvs中的rr算法。如果后端服务器岩机(默认情况下只检测80端口,如果后端报502,404,403,503,还是会直接返给用户),岩机服务器会被自动剔除,使用户访问不受影响,请求会分配给正常的服务器 2.weight(权重) 在轮询算法的基础上加上权重(…

    Linux干货 2016-06-01
  • 非常不错的编程技术教程

    下面是一些非常不错的编程教程,当然,全是英文版的。不过因为是新手教程,所以非常容易阅读,可以在学习技术的同时加强一下自己的英语阅读能力。 如果你是一个新手,建议你把本页设为你的收藏夹。C Introduction to C Programming C Optimization Tutorial Compiling C and C…

    Linux干货 2016-05-10
  • linux用户管理(一)

    作为一个专业的服务器发行版,CentOS上存在着n多个用户,作为一个专业的运维工程师,linux的用户管理和用户组的管理是做为一个SA必不可少的工作. 下面我们就先来谈谈linux中的用户管理: useradd可以在系统中新建一个用户 用法如下: useradd [选项] 用户名 常用选项: -u 指定用户的UID -g 指定用户的初始组ID -G…

    Linux干货 2017-04-03
  • 用vsftpd来搭建网络yum源

    1、分别在CentOS6和CentOS7分别搭建网络yum源 a、CentOS 7中 首先安装并启用vsftpd服务 [root@node1 ~]# mount /dev/cdrom /mnt/yum/ [root@node1 ~]# vim /etc/yum.repos.d/local.repo [local] name=local baseurl=fil…

    2015-10-03