集中练习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
下一篇 2017-10-27

相关推荐

  • Linux命令学习总结:cp命令

    Linux命令学习总结:cp命令 命令简介:      cp命令用来复制文件或目录。指令英文原义:copy,copy files and directories      指令所在路径:/bin/cp 命令语法: cp [OPTION]… [-T]   SO…

    Linux干货 2017-07-23
  • 使用monit搭建一个监控系统

     上周用monit搭建或者说定制了一个监控系统,来监控服务器发生事情。当然了主要是监控异常,因为我们的产品属于服务器类型,很多进程都daemon,要不停的运行。我们搭建监控目的不过是出现问题能够及时的知道,平时可从web UI上看到整个系统的状况,同时它本身要轻量级,不要影响性能。当然了类似的产品很多了,比如Ganglia,我在老科长波哥曾经搭建过…

    Linux干货 2015-02-15
  • 马哥教育网络班第21期+第三周课程作业

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

    Linux干货 2016-07-26
  • http协议(2.2&2.4)RPM搭建配置

    http协议(2.2&2.4)RPM搭建配置 httpd的程序环境: 主程序文件:/usr/sbin/httpd CentOS6系列(默认httpd2.2) 1)配置文件: /etc/httpd/conf/httpd.conf、  /etc/httpd/conf.d/*.conf 2)服务脚本: /etc/rc.d/init.d/…

    Linux干货 2016-10-17
  • 马哥教育网络班21期-第一周课程练习

    第一周课程练习 1、描述计算机的组成及其功能?         1.1 现代主流的计算机(冯·诺依曼体系)主要由五部分组成,分别是控制器、运算器、存储器、输入和输出设备。控制器和运算器对应我们现实计算机看到的CPU,存储器对应内存和硬盘等存储设备,输入设备对应鼠标键盘等其它外设,输出设备对应显示器、音响、打印机等其它外…

    Linux干货 2016-06-26
  • 【译文】如何正确设定MySQL程序的选项

    MySQL手册文档版本:5.6  章节:4.2 Using MySQL Programs  略去了部分windows下使用mysql的相关的说明 译者:古二娃 时间:2015-03-15 章节目录: 4.2 Using MySQL Programs 4.2.1 Invoking MySQL Programs …

    Linux干货 2015-03-10