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

[root@mageedu tmp]# cp /etc/rc.d/rc.sysinit .
[root@mageedu tmp]# vim rc.sysinit
:% s/^[[:space:]]/#&/             #按Esc进入vim的末行模式,并输入

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

[root@mageedu tmp]# cp /boot/grub/grub.conf .
[root@mageedu tmp]# vim grub.conf
:% s#^[[:space:]]##              #按Esc进入vim的末行模式,并输入

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

[root@mageedu tmp]# vim rc.sysinit
:% s/^[[:space:]]\+//              #按Esc进入vim的末行模式,并输入

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

[root@mageedu tmp]# vim grub.conf
:1,3 s/^#/#&/                     #按Esc进入vim的末行模式,并输入
1 ## grub.conf generated by anaconda
2 ##
3 ## Note that you do not have to rerun grub after making changes to this file

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

[root@mageedu tmp]# vim /etc/yum.repos.d/CentOS-Media.repo
:/enabled=0/s/0/1/g
:/gpgcheck=0/s/0/1/g              #按Esc进入vim的末行模式,并输入

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

[root@mageedu tmp]# mkdir /backup
[root@mageedu tmp]# crontab -e
* */4 * * * cp -r /etc/ /backup/etc-`date +%Y%m%d%H%M`
[root@mageedu tmp]# /etc/init.d/crond start

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

[root@mageedu tmp]# mkdir /backup/messages_logs
[root@mageedu tmp]# crontab -e
* * * * */2,4,6 cp /var/log/messages /backup/messages_logs/messages-`date +%Y%m%d`
[root@mageedu tmp]# /etc/init.d/crond restart

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

[root@mageedu tmp]# mkdir -pv /stats/memory.txt
[root@mageedu tmp]# grep "^S" /proc/meminfo
SwapCached:            0 kB
SwapTotal:       2097148 kB
SwapFree:        2097148 kB
Shmem:               240 kB
Slab:              73812 kB
SReclaimable:      14712 kB
SUnreclaim:        59100 kB
[root@mageedu tmp]# crontab -e
* */2 */1 * * grep "^S" /proc/meminfo >> /stats/memory.txt
[root@mageedu tmp]# /etc/init.d/crond restart

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

[root@mageedu tmp]# crontab -e
* 9-18/2 * * */1-5 echo "howdy"
[root@mageedu tmp]# /etc/init.d/crond restart

脚本编程练习

10、创建目录/tmp/testdir-当前日期时间;

[root@mageedu tmp]# vim testdir.sh
#!/bin/bash
mkdir -pv  /tmp/testdir-$(date +%Y%m%d%H%M)
[root@mageedu tmp]# bash -n testdir.sh
[root@mageedu tmp]# bash testdir.sh
mkdir: created directory `/tmp/testdir-201608181859'
root@mageedu tmp]# cd /tmp/
[root@mageedu tmp]# ls
a.sh   grub.conf    testdir-201608181859
a.txt  rc.sysinit    testdir.sh

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

[root@mageedu tmp]# vim file.sh
#!/bin/bash
for i in {1..100}; do
mkdir -pv /tmp/testdir-201608181859/file$i
done
[root@mageedu tmp]# bash -n file.sh
[root@mageedu tmp]# bash file.sh
mkdir: created directory `/tmp/testdir-201608181859/file1'
mkdir: created directory `/tmp/testdir-201608181859/file2'
mkdir: created directory `/tmp/testdir-201608181859/file3'
.......
mkdir: created directory `/tmp/testdir-201608181859/file98'
mkdir: created directory `/tmp/testdir-201608181859/file99'
mkdir: created directory `/tmp/testdir-201608181859/file100'
[root@mageedu tmp]# cd testdir-201608181859/
[root@mageedu testdir-201608181859]# ls
file1    file18  file27  file36  file45  file54  file63  file72  file81  file90
file10   file19  file28  file37  file46  file55  file64  file73  file82  file91
file100  file2   file29  file38  file47  file56  file65  file74  file83  file92
file11   file20  file3   file39  file48  file57  file66  file75  file84  file93
file12   file21  file30  file4   file49  file58  file67  file76  file85  file94
file13   file22  file31  file40  file5   file59  file68  file77  file86  file95
file14   file23  file32  file41  file50  file6   file69  file78  file87  file96
file15   file24  file33  file42  file51  file60  file7   file79  file88  file97
file16   file25  file34  file43  file52  file61  file70  file8   file89  file98
file17   file26  file35  file44  file53  file62  file71  file80  file9   file99

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

[root@mageedu tmp]# vim passwd.sh
#!/bin/bash
sum=$(wc -l /etc/passwd | cut -d' ' -f1)
for i in $(seq 2 2 $sum); do
head -n$i /etc/passwd | tail -n 1 | cut -d: -f1
done
[root@mageedu tmp]# bash -n passwd.sh
[root@mageedu tmp]# bash passwd.sh
bin
adm
sync
halt
uucp
games
ftp
vcsa
postfix
zengzy
basher
nologin
slackware
mysql
hadoop1
fedora

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

[root@mageedu tmp]# vim user.sh
#!/bin/bash
if [ ! $UID -eq 0 ]; thenecho "welcome root crate user"exit 1
fi
for i in {10..19}; doif id user$i &> /dev/null ; thenecho "user exists"elseuseradd user$iif [ $? -eq 0 ]; thenecho "user$i" | passwd --stdin user$i &> /dev/nullecho "New user:user$i add success"fifi
done
[root@mageedu tmp]# bash -n user.sh
[root@mageedu tmp]# su zengzy
[zengzy@mageedu tmp]$ bash user.sh
welcome root crate user
[zengzy@mageedu tmp]$ exit
[root@mageedu tmp]# bash user.sh
New user:user10 add success
New user:user11 add success
New user:user12 add success
New user:user13 add success
New user:user14 add success
New user:user15 add success
New user:user16 add success
New user:user17 add success
New user:user18 add success
New user:user19 add success

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

[root@mageedu tmp]# vim newfile.sh
#!/bin/bash
for i in {10..19}; do
touch /tmp/file$i
done
[root@mageedu tmp]# bash -n newfile.sh
[root@mageedu tmp]# bash newfile.sh
[root@mageedu tmp]# ls
a.sh    file12  file16  file.sh     rc.sysinit            testdir.sh
a.txt   file13  file17  grub.conf   testdir-201608181852  user.sh
file10  file14  file18  newfile.sh  testdir-201608181857
file11  file15  file19  passwd.sh   testdir-201608181859

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

[root@mageedu tmp]# vim prmfile.sh
#!/bin/bash
for i in {10..19}; do
chown user$i:user$i /tmp/file$i
donemageedu tmp]# ll
total 68
-rw-r--r--.   1 root root     0 Aug 18 19:49 file10
-rw-r--r--.   1 root root     0 Aug 18 19:49 file11
-rw-r--r--.   1 root root     0 Aug 18 19:49 file12
-rw-r--r--.   1 root root     0 Aug 18 19:49 file13
-rw-r--r--.   1 root root     0 Aug 18 19:49 file14
-rw-r--r--.   1 root root     0 Aug 18 19:49 file15
-rw-r--r--.   1 root root     0 Aug 18 19:49 file16
-rw-r--r--.   1 root root     0 Aug 18 19:49 file17
-rw-r--r--.   1 root root     0 Aug 18 19:49 file18
-rw-r--r--.   1 root root     0 Aug 18 19:49 file19
[root@mageedu tmp]# bash -n prmfile.sh
[root@mageedu tmp]# bash prmfile.sh
[root@mageedu tmp]# ll
total 68
-rw-r--r--.   1 user10 user10     0 Aug 18 19:49 file10
-rw-r--r--.   1 user11 user11     0 Aug 18 19:49 file11
-rw-r--r--.   1 user12 user12     0 Aug 18 19:49 file12
-rw-r--r--.   1 user13 user13     0 Aug 18 19:49 file13
-rw-r--r--.   1 user14 user14     0 Aug 18 19:49 file14
-rw-r--r--.   1 user15 user15     0 Aug 18 19:49 file15
-rw-r--r--.   1 user16 user16     0 Aug 18 19:49 file16
-rw-r--r--.   1 user17 user17     0 Aug 18 19:49 file17
-rw-r--r--.   1 user18 user18     0 Aug 18 19:49 file18
-rw-r--r--.   1 user19 user19     0 Aug 18 19:49 file19

转载于:https://blog.51cto.com/zengzeyang/1851682

马哥linux第六周作业相关推荐

  1. 马哥linux 培训第一周作业

    本周作业内容: 1.描述计算机的组成及其功能. 运算器.控制器.存储器.输入设备.输出设备 CPU bus:总线 memory: 编址存储设备 read ahead IO: 与外部部件交互 磁盘: 网 ...

  2. 马哥教育N63013-第一周作业

    1.按系列罗列Linux的发行版,并描述不同发行版之间的联系与区别. Linux是一个诞生于网络.成长于网络且成熟于网络的奇特的操作系统.1991年,芬兰大学生Linus Torvalds萌发了开发一 ...

  3. 厚基础Linux——第七周作业

    文章目录 厚基础Linux--第七周作业 1.自建yum仓库,分别为网络源和本地源 环境规划 技术要求 需求分析 server端 client端 操作步骤 系统安装 server操作步骤 clinet ...

  4. 20189200余超 2018-2019-2 移动平台应用开发实践第六周作业

    20189200余超 2018-2019-2 移动平台应用开发实践第六周作业 Android简介.活动.UI组件 1.Android系统架构 这是Android系统架构图,够一目了然了吧,Androi ...

  5. 2018-2019-2 20189221 《网络攻防技术》第六周作业

    2018-2019-2 20189221 <网络攻防技术>第六周作业 视频学习(21-25) KaliSecurity-密码攻击之在线攻击工具 1.Cewl 可以通过爬行网站获取关键信息创 ...

  6. 2018-2019-2 20189206 《网络攻防实践》 第六周作业

    2018-2019-2 20189206 <网络攻防实践> 第六周作业 课本学习 TCP/IP网络协议栈攻击 网络安全属性与攻击模式 机密性 保护网络中的信息安全,通常使用加密算法 完整性 ...

  7. 2017-2018-2 20179205 《网络攻防技术与实践》第六周作业

    <网络攻防技术与实践>第六周作业 视频学习总结 一.kali密码攻击之在线工具攻击 密码攻击是安全测试中必不可少的一环,而在线攻击多为对一个服务远程连接并使用用户名与密码破解. 1.cew ...

  8. linux mysql jdk路径_教大家在如何Centos7系统中安装JDK、Tomcat、Mysql(文末附马哥linux全套视频教......

    目录1.jdk的安装 2.tomcat的安装 3.mysql的安装 远程工具:SSH Secure File Transfer Client 远程工具的使用 下载地址:https://pan.baid ...

  9. Linux第六周学习总结——进程额管理和进程的创建

    Linux第六周学习总结--进程额管理和进程的创建 作者:刘浩晨 [原创作品转载请注明出处] <Linux内核分析>MOOC课程http://mooc.study.163.com/cour ...

最新文章

  1. 感知机模拟或门的实现:权重和阈值的设置
  2. 《MySQL——Innodb改进LRU算法》
  3. zoj 1115 Digital Roots
  4. 使用国密浏览器和使用Wireshark进行国密抓包
  5. 3.Redis与python交互
  6. 基于jsp+mysql+Spring+hibernate+在线学习交流论坛平台
  7. Reddit前CEO黄易山:马斯克不懂言论自由的挑战
  8. Java异常:选择Checked Exception还是Unchecked Exception?
  9. 【GIS导论】实验三 数据处理
  10. 微信扫码免密登陆第三方应用平台
  11. linux输入法状态栏消失,隐藏 fcitx 输入法的状态栏
  12. matlab画随机信号,(最新整理)随机信号处理基础matlab仿真
  13. 图文详解YUV420数据格式
  14. PS完成淡水彩效果的步骤
  15. 推荐几个超有趣的公众号
  16. 支付宝小程序唤起签约并支付(周期扣款)
  17. 一周看点 | 腾讯回应“人员优化”;Go成大厂热门编程语言;京东开启裁员;万门大学疑似跑路...
  18. TP5模型多个字段多个关键词查询
  19. 互联网广告请求链路_生产环境的全链路压测应该怎么做?答案都在这里了
  20. SAP中采购自动评估收货结算基本应用分析

热门文章

  1. android懒加载单实例,【 Android 10 设计模式 】系列 -- 单例
  2. c语言 p *p,C语言之指针*p++和*(p++)区别
  3. 北交计算机学硕培养计划,北京交通大学硕士研究生培养方案——交通信息工程及控制...
  4. java mysubmail_关于MyBatis10种超好用的写法(收藏)
  5. c 如何操作php,thinkphp的c方法使用示例
  6. dsm php,docker dsm是什么?
  7. mysql 同一帐号多次登录_freeradius2.1.3 防止用户帐号重复登录
  8. informatica mysql odbc_Informatica 配置mysql community odbc连接
  9. Naive Bayes Classifier - 朴素贝叶斯分类器
  10. Java 设计模式 Day2 之面向抽象原则:接口(interface)的设计应用与抽象类的区别