馬哥教育網絡班21期-第六周課程練習

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

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

[root@junfeng ~]# cp /etc/rc.d/rc.sysinit /tmp
[root@junfeng ~]# vi /tmp/rc.sysinit 
                  :%s/^[[:space:]]\+/#&/

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

[root@junfeng ~]# cp /boot/grub/grub.conf /tmp
[root@junfeng ~]# vi /tmp/grub.conf 
                  :%s/^[[:space:]]\+//g

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

[root@junfeng ~]# vi /tmp/rc.sysinit 
                  :%s/^#[[:space:]]\+//g

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

[root@junfeng ~]# vi /tmp/grub.conf 
                  :1,3s/^.*/#&/g

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

[root@junfeng ~]# vim /etc/yum.repos.d/CentOS-Media.repo
                  :%s/=0/=1/g

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

 [root@junfeng ~]# crontab -l
 * */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@junfeng ~]# crontab -l
 10 * * * 2,4,6 cp -rf /etc /backup/etc-`date +%Y%m%d`

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

[root@junfeng ~]# crontab -l
 * */2 * * * grep -i "^s" /proc/meminfo >> /stats/memory.txt

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

[root@junfeng ~]# crontab -l
 * */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 in  {1..100}; do
    mkdir -p file$i
    echo "make file$i successful"
done

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

[root@junfeng ~]# awk -F: '(+NR%2==0) {print $1}' /etc/passwd

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

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

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

#!/bin/bash
for i in {10..19}; do
    if [ -d /tmp/file$i ]; then
        echo "file$i exists."
    else
        mkdir -p  /tmp/file$
        [ $? -eq 0 ] && echo "Add file$i finished."
    fi
done

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

#!/bin/bash
for i in {10..19}; do
    chown user$i:user$i /tmp/file$i
    [ $? -eq 0 ] && echo "changed"
done

原創文章,作者:Jeason,如若轉載,請注明出處:http://www.www58058.com/33948

(0)
JeasonJeason
上一篇 2016-08-15 12:06
下一篇 2016-08-15 12:06

相關推薦

  • 10 文本處理のsed狗帶

    sed 介紹 工作原理 語法 參數選項:-n, -e, -r, -f, -i 地址定界 編輯命令 查找替換 空間操作 練習 參考文檔 sed介紹 sed是一個(stream editor)。         1) :使用sed只能在命令行下輸入編輯命令來編輯文…

    Linux干貨 2016-08-12
  • http狀態碼大全

    狀態值:100 客戶端應當繼續發送請求。這個臨時響應是用來通知客戶端它的部分請求已經被服務器接收,且仍未被拒絕。客戶端應當繼續發送請求的剩余部分,或者如果請求已經完成,忽略這個響應。服務器必須在請求完成后向客戶端發送一個最終響應。 狀態值:101 服務器已經理解了客戶端的請求,并將通過Upgrade 消息頭通知客戶端采用不同的協議來完成這個請求。在發送完這個…

    Linux干貨 2016-11-01
  • linux防火墻介紹

    一、前言firewall(防火墻):工作在網絡進入或者流包,進出的網絡數據包進行一定的規則進行檢查過濾系統。包括iptables和netfilter組件。iptables 是與 Linux 內核集成的 IP 信息包過濾系統。如果 Linux 系統連接到因特網或 LAN、服務器或連接 LAN 和因特網的代理服務器, 則該系統系統中更好地控制 IP 信息包過濾和…

    2017-04-30
  • 計算機的組成及其功能

        計算機是一種能接受和存儲信息,并按照存儲在其內部的程序對輸入的信息進行加工、處理,然后把處理結果輸出的高度自動化的電子設備。計算機是由運算器,控制器,存儲器,輸入裝置和輸出裝置五大部件組成,每一部件分別按要求執行特定的基本功能。如下圖所示: (1)  運算器或稱算術邏輯單元(Arithmetical and Logica…

    Linux干貨 2016-10-30
  • 一周學會shell編程之小結1

    一周學會shell編程之小結1 內容: shell腳本創建與執行 變量 條件測試 if,case判斷語句 練習   檢查錯誤: bash -n path 調試執行: bash -x path   創建shell腳本步驟: 1 添加第一行 #!/bin/bash 2 給予…

    Linux干貨 2016-08-15
  • wk_03作業

    1、列出當前系統上所有已經登錄的用戶的用戶名,注意:同一個用戶登錄多次,則只顯示一次即可。 who |cut -d' ' -f1|uniq 2、取出最后登錄到當前系統的用戶的相關信息。 # who |tail -1 |cut -d &#03…

    Linux干貨 2016-12-15

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-08-17 15:15

    寫的很好,排版也很棒,加油,crontab的不對

欧美性久久久久