N22+張zhangzhang+第6周博客作業

請詳細總結vim編輯器的使用并完成以下練習題

  vim編輯器是vi編輯器的增強版,是全屏文本編輯器,用于完成文本的輸出、刪除、查找、替換、塊操作等眾多功能。一般分三種模式:編輯模式、輸入模式、末行模式。

1474290378333400.jpg

vim各種按鍵的功能

編輯模式:

1474292298478334.jpg

1474292890394758.jpg

1、復制/etc/rc.d/rc.sysinit文件至/tmp目錄,將/tmp/rc.sysinit文件中的以至少一個空白字符開頭的行的行首加#;

cp /etc/rc.d/rc.sysinit /tmp
vim /tmp/rc.sysinit
:%s@^[[:space:]]\+[^[:space:]]\+@#&@g  ##在末行模式下輸入替換命令

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

cp /boot/grub/grub,conf /tmp
vim /tmp/grub.conf 
:%s@^[[:space:]]\+@@g

3、刪除/tmp/rc.sysinit文件中的以#開頭,且后面跟了至少一個空白字符的行行的#和空白字符

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

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

:1,3s@^[^[:space:]]\+@#&@g

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

vim /etc/yum.repos.d/CentOS-Media.repo
:%s@\(enabled\|gpgcheck\)=0@\1=1@g

6、每4小時執行一次對/etc目錄的備份,備份至/backup目錄中,保存的目錄名為形如etc-201504020202

0 */4 * * * /usr/bin/cp -R /etc /tmp/backup/etc-`date +%Y%m%d%H%M`

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

* * * * 2,4,6 /usr/bin/cp -a /var/log/messages /backup/messages-`date +%Y%m%d%H`

8、每天每兩小時取當前系統/proc/meminfo文件中的所有以S開頭的信息至/stats/memory.txt文件中

* */2 * * 1-7 /usr/bin/grep -E "^S" >> /stats/memory.tex

9、工作日的工作時間內,每兩小時執行一次echo "howdy"

* */2 * * 1-5 /usr/bin/echo “howdy”

腳本編程練習
10、創建目錄/tmp/testdir-當前日期時間

11、在此目錄創建100個空文件:file1-file100

#!/bin/bash
#創建目錄
Name=/tmp/testdir-`date +%Y%m%d`
if [ -d $Name ] ; then
   echo "$Name exits"
else
   mkdir $Name
   echo "$Name have added"
fi
#創建空文件
for i in {1..100} ; do
   touch $Name/file$i &> /dev/null
   echo "$Name/file$i have created"
done

12、顯示/etc/passwd文件中位于第偶數行的用戶的用戶名;

#!/bin/bash
#
Line=`wc -l /etc/passwd | cut -d" " -f1`
for i in ` seq 0 2 $Line ` ; do
     Username=` head -$i /etc/passwd | tail -1 | cut -d: -f1`
     echo "$i line username $Username"
done

13、創建10用戶user10-user19;密碼同用戶名;

#!/bin/bash
#
for i in {10..19} ; do
   if id user$i ; then
      echo "user $i exits"
      exit 1
   else
      useradd user$i
      echo "user$i" | passwd --stdin user$i
      echo "user$i have created"
   fi
done

14、在/tmp/創建10個空文件file10-file19;

#!/bin/bash
#

for i in {10..19} ; do
    if [ -e /tmp/file$i -a -s /tmp/file$i ] ; then
         echo " /tmp/file$i not kong file"
         exit 1
    else
         touch /tmp/file$i
         echo " /tmp/file$i have created"
    fi
done

15、把file10的屬主和屬組改為user10,依次類推。

#!/bin/bash
#
for i in {10..19} ; do
   if ! id user$i &> /dev/null ; then
       echo " no such user"
       useradd user$i &> /dev/null
       echo "have created"
   fi
   chown user$i:user$i /tmp/file$i
   ls -l /tmp/file$i
done

原創文章,作者:N22-北京-張zhangzhang,如若轉載,請注明出處:http://www.www58058.com/47876

(0)
N22-北京-張zhangzhangN22-北京-張zhangzhang
上一篇 2016-09-20 09:09
下一篇 2016-09-20 09:25

相關推薦

  • Linux下/proc目錄詳解

    Linux下/proc目錄詳解 proc目錄總的概述 proc下有關進程的目錄概述 proc下針對Linux系統相關的參數目錄概述 /proc目錄總的概述 1.首先,我們可以使用ll命令查看下/proc目錄,如下 [root@centos6 ~]# ls -l /proc total 0 dr-xr-xr-x. 8 root root 0 May 19 04…

    Linux干貨 2017-05-20
  • N25第一周學習總結

    第一周學習總結 按照課程要求,本周完成2天的課時,總計8課時。 因為是剛開課,馬哥為我們介紹了上課環境,課程體系,還有一些計算機基礎理論。內容主要是:          計算機的工作機制        &nbs…

    Linux干貨 2016-12-04
  • 私有IP網子網掩碼劃分原則及計算方法

    私有IP網子網掩碼劃分原則及計算方法 最好記下的二進制轉換十進制 00000000 0 00000001 1 00000010 2 00000100 4 00001000 8 00010000 16 00100000 32 01000000 64 10000000 128 11000000 192 11100000 224 11110000 240 1111…

    Linux干貨 2017-05-02
  • 學以致用

    1、Linux上的文件管理類命令都有哪些,其常用的使用方法及其相關示例演示。 cp – copy files and directories 復制文件或目錄 使用格式: 單文件復制 cp [OPTION]… [-T] SOURCE DEST 如果DEST不存在,即創建文件并復制源文件數據流; 如果DEST存在,且為非目錄文件時,將覆蓋…

    Linux干貨 2016-10-13
  • iptables/netfilter入門到進階

    iptables從入門到精通 本文主要圍繞以下七點進行闡述:   一、防火墻簡介 二、Iptables簡介 三、Iptables的四張表及五條鏈 四、Iptables的filter應用詳解 五、Iptables的nat應用詳解       一、防火墻簡介: 在網絡中,所謂的防火墻是指一種將內部網絡和公眾訪問網分開的方法…

    Linux干貨 2017-03-15
  • ThirdWeek_SecondDay

    Python學習筆記整理

    Linux干貨 2017-10-09

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-09-27 09:53

    crontab的都不對,在仔細想想

欧美性久久久久