linux基础操作-week6

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

# cp /etc/rc.d/rc.sysinit /tmp

#vim /tmp/rc.sysinit

末行模式:

:%s@^[[:space:]]\{1,\}@#&@g

匹配分析: 

    %:的作用是做全文匹配,可以使用1,$来替换; 

    @:表示分隔符,这个可以用其他的非在本文中出现的字符替换; 

    ^[[:space:]]:[[:space:]]表示空白字符,^表示开头; 

    {1,}:匹配至少1次前一个RE字符; 

    &:表示引用所匹配到的所有内容。

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

# cp /boot/grub/grub.conf /tmp

#vim /tmp/grub.conf

末行模式下

:1,$s@^[[:space:]]\{1,\}@@g

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

vim /tmp/rc.sysinit

末行模式下输入 

:%s@^#[[:space:]]\+@@g

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

#vim /grub.conf

末行模式下输入

:1,3s@^.*@#@g

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

#vim /etc/yum.repos.d/CentOS.Media.repo 

vim末行模式输入 

:1,$s@\(enabled\|gpgcheck\)=0@\1=1@g

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

#crontab -e

* */4 * * * /bin/cp /etc /backup/etc-$(date +%Y%m%d%H%M) >/dev/null 2>&1


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

#crontab -e

* * * * 2,4,6  /bin/cp /var/log/messages /backup/messages_logs/messages-$(date +%Y%m%d) >/dev/null 2>&1

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

#crontab -e

* */2 /bin/grep '^S' /proc/meminfo >>/stats/memory.txt

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

#crontab -e

* 9-18/2 * * 1-5 /bin/echo "howdy"



脚本编程练习

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

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

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

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

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

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

脚本如下:

# cat test.sh 

#!/bin/bash

#Author LZ

#date xxxx

TMPDIR=/tmp

DATE=`date +%Y%m%d%H%M`

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

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

[ -d $TMPDIR ] &&\

mkdir $TMPDIR/testdir-$DATE

cd $TMPDIR/testdir-$DATE &&\

touch file{1..100}

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

sed '1~2d' /etc/passwd|awk -F ":" '{print $1}'

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

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

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

for i in `seq 10 19`;do

useradd user$i

echo "user$i"|passwd –stdin user$i

touch /tmp/file$i

chown user$i.user$i /tmp/file$i

done


null

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

(0)
N24_liuzN24_liuz
上一篇 2016-11-28 20:04
下一篇 2016-11-28 21:36

相关推荐

  • 我们都在前行的路上

    我们都在前行的路上         从0到1是一种突破,年少轻狂到心有余而力不足,力挽狂澜到恬淡人生需伏地脚踏实地地前行,漂泊在一线都市,立足我图网,途径百胜,一次机缘巧合转战阿里,对于一个工作6年的弄潮儿,他将所有经历的化作前行的动力和坚韧不拔的耐力,也许不经意,但却理所当然,…

    Linux干货 2016-11-03
  • linux的内建命令和外部命令

    摘要:    Linux命令有内部命令(内建命令)和外部命令之分,内部命令和外部命令功能基本相同,但是其工作机制相差很大。本文就内建命令和外部命令做一下介绍。 一、内部命令(内建命令)    内部命令,实际上是shell程序的一部分,其中包含的是一些比较简单的linux系统命令,这些命令由shell程序识别并在shel…

    Linux干货 2016-10-18
  • Linux基础之shell脚本编程(二)

    1、写一个脚本,完成以下功能    (1) 假设某目录(/etc/rc.d/rc3.d/)下分别有K开头的文件和S开头的文件若干;    (2) 显示所有以K开头的文件的文件名,并且给其附加一个stop字符串;    (3) 显示所有以S开头的文件的文件名,并且给其附加一个start字符串; &nb…

    Linux干货 2016-11-17
  • 学习宣言

    失败是留给不坚持的人·······

    Linux干货 2016-12-27
  • CentOS 7 tomcat 7.0.54 的功能实现及详解

    一、 jdk 安装配置 # yum install java-1.8.0-openjdk-devel (依赖的java-1.8.0-openjdk,java-1.8.0-openjdk,headless也会被安装 ) # alternatives -h # vim /e…

    2016-08-19
  • keepalived+nginx部署(单主模型)

    环境准备Centos7系统,后端服务器提供web服务。地址规划: VS1: 172.18.51.7 VS2:172.17.51.77 RS1:172.18.51.74 RS2:172.18.51.75 VirtualIP:172.18.51.82 拓扑图: 原理:nginx是高度模块化的应用程序,其中nginx_proxy模块即可实现负载均衡,将前端的用户请…

    2017-05-17

评论列表(1条)

  • 马哥教育
    马哥教育 2016-12-07 23:15

    看看你的第8个写的对吗?还有啊,作业是需要动手验证的哦