sed的使用和脚本练习

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

cp /etc/rc.d/rc.sysinit /tmp
sed -i 's/\(^[[:space:]]\)/#\1/g' /tmp/rc.sysinit

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

cp /boot/grub/grub.conf /tmp
sed -i 's/^[[:space:]]\+//g' /tmp/grub.conf


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

sed -i 's@^#[[:space:]]\+@@g' /tmp/rc.sysinit

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

sed -i '1,3s@\(^.\)@#\1@g' /tmp/grub.conf

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

sed -i 's/enabled=0/enabled=1/g;s/gpgcheck=0/gpgcheck=1/g' /etc/yum.repos.d/CentOS-Media.repo

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

crontab -e
crontab -e 0*/4*** /etc /backup/etc-$(date +%Y%m%d%H%M)

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

crontab -e
*00**2,4,6 cp -rf /var/log/messages /backup/message-$(date +%Y%m%d)


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

crontab -e
1*/2**1,2,3,4,5 grep "^S" /proc/meminfo >> /stats/memry.txt

9、工作日的工作时间内,每两小时执行一次echohowdy”。

crontab -e
1*/2**1,2,3,4,5 echo "howdy"

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

vim test1.sh
#!/bin/bash
#
mkdir /tmp/testdir-$(date +%Y%m%d)

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

vim test2.sh
#!/bin/bash
#
for i in {1..100};do
touch /tmp/testdir-201609071346/file$i
done


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

vim test3.sh
#!/bin/bash
#
sed -n 'n;p' /etc/passwd | cut -d: -f1

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

(1)
N27_huiyezhichengN27_huiyezhicheng
上一篇 2017-08-06 20:02
下一篇 2017-08-06 22:13

相关推荐

  • Linux 进程及作业管理

    一 进程、线程、程序概念 1、进程(Process) 什么是进程,简单的说,进程是程序的执行实例,即运行中的程序,同时也是程序的一个副本;程序是放置于磁盘的,而运行中的程序是位于内存中的。 2、线程(Thread) 一个进程至少包括一个线程,通常将该线程称为主线程,所以线程是比进程更小的单位,是系统分配处理器时间资源的基本单元。一个进程要想同时在多颗CPU上…

    Linux干货 2016-03-15
  • linux发展史

    linux发展史简介: 20世纪60年代,MIT开发分时操作系统(Compatible TIme-Sharing System),支持30台终端访问主机;     ~主机负责运算,而终端负责输入输出; 1965年,Bell实验室、MIT、GE(通用电气公司)准备开发Multics系统,为了同时支持3…

    Linux干货 2016-10-14
  • RAID及LVM的实现

    RAID及LVM的实现 第一部分 : RAID介绍及创建 1、mdadm工具 2、创建RAID 5及删除RAID 第二部分 : LVM的实现 1、基本命令 2、LVM创建及扩容和缩减 3、LVM快照 RAID介绍及创建 1、mdadm工具 mdadm [mode] <raid device> [options] <任意块设备> [mo…

    Linux干货 2017-08-22
  • linux用户与组的基本概念–20160730

    用户组和权限管理—概念       用户组和权限管理—概念 3A:认证,授权,审计。 每个使用者:用户标识,密码:  Authentication    :  认证 Authorization     :授权 Accout/Audition…

    Linux干货 2016-08-04
  • linux历史命令history详解

    history命令 history命令用于显示指定数目的指令命令,读取历史命令文件中的目录到历史命令缓冲区和将历史命令缓冲区中的目录写入命令文件。 该命令单独使用时,仅显示历史命令,在命令行中,可以使用符号!执行指定序号的历史命令。例如,要执行第2个历史命令,则输入!2。  128  ls  129  history[…

    Linux干货 2016-09-05
  • 让自定义脚本成为服务脚本

    1.脚本注释格式:此格式能让chkconfig命令识别 #!/bin/bash#chkconfig:runlevel [S]##  [K]##    定义默认runlevel) (S开头,定义启动优先级) (K开头,定义关闭优先级) #description:脚本说明:太长的话需要\换行 2.case语句实现start,stop…

    Linux干货 2017-05-15

评论列表(1条)

  • 马哥教育
    马哥教育 2017-08-20 18:58

    sed作为文本编辑三大神器之一,用好了能让人眼前一亮,再接再励。