集中练习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

相关推荐

  • LVM

       本节主要为raid和LVM相关 一、作业 1、创建一个2G的文件系统,块大小为2048byte,预留1%可用空间,文件系统ext4,卷标为TEST,要求此分区开机后自动挂载至/test目录,且默认有acl挂载选项 2、写一个脚本,完成如下功能: (1) 列出当前系统识别到的所有磁盘设备 (2) 如磁盘数量为1,则显示其空间使用信息 …

    Linux干货 2016-08-30
  • bash基础特性及用户与组管理

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 2、取出最后登录到当前系统的用户的相关信息。 3、取出当前系统上被用户当做其默认shell的最多的那个shell。 4、将/etc/passwd中的第三个字段数值最大的后10个用户的信息全部改为大写后保存至/tmp/maxuser.txt文件中。 5、取出当前主机的I…

    2017-09-29
  • 无痛之ext3升ext4[原创]

    一台文件存储服务器单目录下子目录已经突破31998数限制,造成无法继续创建子目录,服务器系统环境为CentOS5.4 内核版本为2.6.18。解决方案只能是升级到ext4文件系统,首先到https://ext4.wiki.kernel.org/index.php/Ext4_Howto查了一下资料,文中的第一句便是“Ext4 was released as a…

    Linux干货 2015-03-27
  • loganalyzer——日志分析工具

    Loganalyzer是一款syslog日志和其他网络事件数据的Web前端。它提供了对日志的简单浏览、搜索、基本分析和一些图表报告的功能。数据可以从数据库或一般的syslog文本文件中获取,所以LogAnalyzer不需要改变现有的记录架构。基于当前的日志数据,它可以处理syslog日志消息,Windows事件日志记录,支持故障排除,使用户能够快速查找日志数…

    Linux干货 2016-10-18
  • Centos 7 之systemd

    Centos 7 之systemd systemd POST –> Boot Sequence –> Bootloader –> kernel + initramfs(initrd) –> rootfs –> /sbin/init init: CentOS 5: Sys…

    Linux干货 2016-09-23
  • N22-第二周作业

    1、文件管理类命令有:cp,mv,rm    cp:复制命令      用法:cp [OPTION]… SOURCE… DEST        如果DEST不存在,则先创建此文件并复制源…

    Linux干货 2016-08-29