马哥教育网络班21期+第6周课程练习

请详细总结vim编辑器的使用并完成以下练习题

Vim的使用.png

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

[root@localhost ~]#cp /etc/rc.d/rc.sysinit /tmp/
[root@localhost ~]# sed 's/^[[:space:]]\+/#/' /tmp/rc.sysinit

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

[root@localhost ~]#cp /boot/grub/grub.conf /tmp/
[root@localhost ~]# sed 's/^[[:space:]]\+//' /tmp/grub.conf

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

[root@localhost ~]#sed 's@^#[[:space:]]\+@@' /tmp/rc.sysinit

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

[root@localhost ~]#sed 1,3's/^/#/' /tmp/grub.conf

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

[root@localhost ~]#sed 's/=0/=1/' /etc/yum.repos.d/CentOS-Media.repo

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

[root@localhost ~]#crontab -e
* */4 * * * cp -rf /etc /backup/etc-`date +\%Y\%m\%d\%H\%M`

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

[root@localhost ~]#crontab -e
1 * * * 2,4,6 cp /var/log/messages /backup/messages_logs/messages-`date +\%Y\%m\%d`

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

[root@localhost ~]#crontab -e
1 */2 * * * grep "^S" /proc/meminfo >> /stats/memory.txt

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

[root@localhost ~]#crontab -e
1 */2 * * 1,2,3,4,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 {1..100};do
	mkdir -p file$i
done

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

#!/bin/bash
#
sed -n 'n;p' /etc/passwd | cut -d":" -f1 >> /tmp/user.txt

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

#!/bin/bash
#
for i in {10..19};do
	if id user$i &> /dev/null;then
		echo "user$i has exist."
	else
		useradd user$i
		[ $? -eq 0 ] && echo "user$i" | passwd --stdin user$i &> /dev/null
	fi
done
echo "Add user$i finish"

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

#!/bin/bash
#
declare -i i=10
while [ $i -le 19 ];do
	if [ -d file$i ];then
		echo "file$i has exist."
	else
		mkdir -pv file$i
	fi
	let i++
done

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

#!/bin/bash
#
declare -i i=10
while [ $i -le 19 ];done
	if [ -d file$i ];then
		chown user$i:user$i file$i &> /dev/null
		echo "change file$i user group finish"
	else
		echo "No exist file"
	fi
	let i++
done

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

(0)
Net21_LionNet21_Lion
上一篇 2016-07-29 15:26
下一篇 2016-07-29 15:26

相关推荐

  • 网络接口Bonding以及网络组

    网络接口Bonding就是将多块网卡绑定同一IP地址对外提供服务,可以实现高可用或者负载均衡。当然,直接给两块网卡设置同一IP地址是不可能的。通过bonding,虚拟一块网卡对外提供连接,物理网卡的被修改为相同的MAC地址。 网络组 :网络组:是将多个网卡聚合在一起方法,从而实现冗错和提高吞吐量。网络组不同于旧版中bonding技术,提供更好的性能…

    Linux干货 2016-11-23
  • 8.3上课练习及课下作业

    练习 上课练习 1、 当用户xiaoming对/testdir 目录无执行权限时,意味着无法做哪些操作? 能查看文件大小,不能进入此目录,不能在此目录创建文件 能看到目录中的内容,不能查看目录内的大小及属性,仅能查看目录的相关属性 [xiaoming@localhost ~]$ ll -d qin drwxrwxrw-…

    Linux干货 2016-08-05
  • 计算机网络基础及常用工具

    Linux网络属性配置      计算机网络:      TCP/IP: 协议栈(使用)      ISO, OSI: 协议栈(学习)  MAC:Media Access Control      48bits:   &…

    Linux干货 2017-01-02
  • N27_第五周作业

    一、显示当前系统上root、fedora或者user1用户的默认shell; [root@localhost ~]# grep -E “^(root|fedora|user1)” /etc/passwd | cut -d: -f7 /bin/bash /bin/tcsh /bin/bash二、找出/etc/rc.d/init.d/fu…

    Linux干货 2017-10-20
  • ☞磁盘管理、MBR、GPT、分区工具、文件系统、常见分区挂载

    磁盘管理{磁盘结构;MBR;GPT;分区工具;文件系统;分区挂载;}

    Linux干货 2016-08-29
  • linux入门学习动手部分

    linux入门学习了几天,各种命令跟选项如果靠记忆很容易忘记,通过下面随堂实验加深记忆 实验操作部分 enable 命令使用 禁用内部命令 enable -n echo 禁用echo命令 重新启用echo命令 enable echo type 命令使用 type -a echo 列出所有echo的内部命令外部命令 type -p cd 显出cd外部命令的路径…

    Linux干货 2017-05-20

评论列表(1条)

  • 马哥教育
    马哥教育 2016-07-29 15:57

    写的很好,排版也很棒,加油,周一到周五可以写成1-5,11题是创建文件