馬哥教育網絡班22期+第6周課程練習 忍者亂太郎喻成

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

1、復制/etc/rc.d/rc.sysinit文件至/tmp目錄,將/tmp/rc.sysinit文件中的以至少一個空白字符開頭的行的行首加#
cp /etc/rc.d/rc.sysinit /tmp
方法一 vim法
在vim下用 : 進入命令行模式
  

  %s/^ /#\1/g

方法二 sed法

sed "s/\(^ \)/#\1/g" /tmp/rc.sysinit > tmp
cat tmp > /tmp/rc.sysinit
rm tmp

2、復制/boot/grub/grub.conf至/tmp目錄中,刪除/tmp/grub.conf文件中的行首的空白字符;
    cp /boot/grub/grub.conf /tmp/
vim法
命令行模式下使用

%s/^ .*//g

sed法

sed "s/^ .*//g" /tmp/grub.conf >tmp
cat tmp > /tmp/grub.conf
rm tmp

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

:%s/^\s\+//g

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

0,3s/^/#/g

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

%s/enabled=0/enabled=1/g

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

mkdir /backup
crontab -e #設置crontab任務
加入行 
* */4 * * * tar -cvf /backup/etc-$(date "+%Y%m%d%H%M") /etc

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

mkdir /backup

crontab -e #設置crontab任務
加入行

* * * * 2,4,6 cp /var/log/messages /backup/messages_logs/messages-$(date "+%Y%m%d")

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

mkdir stats
touch /stats/memory.txt

crontab -e #設置crontab任務
加入行

* */2 * * * cat /proc/meminfo/S* >> /stats/memory.txt

9、工作日的工作時間內,每兩小時執行一次echo ""howdy""
crontab -e #設置crontab任務
加入行

* 8-17/2 * * 1-5 echo "\"howdy\""

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

mkdir /tmp/testdir-$(date +"%Y%m%d")

11、在此目錄創建100個空文件:file1-file100
寫一個腳本文件并執行
#!/bin/bash

cd /tmp
for i in $(seq 1 100);do
    touch file-$i
done


12、顯示/etc/passwd文件中位于第偶數行的用戶的用戶名;
寫一個腳本文件并執行

#!/bin/bash

declare -i i=0;
cat /etc/passwd | while read -r line; do
        if [ $[ $i%2 ]  == 0 ]; then
                echo $(echo $line | cut -d":" -f1);
        fi
        i=$i+1;
done
        

13、創建10用戶user10-user19;密碼同用戶名;
寫一個腳本并執行
#!/bin/bash

for i in $(seq 10 19);do
        useradd user$i -p user$i;
done

14、在/tmp/創建10個空文件file10-file19;
寫腳本
#!/bin/bash

for i in $(seq 10 19);do
    touch /tmp/file-$i
done

15、把file10的屬主和屬組改為user10,依次類推。
寫腳本
#!/bin/bash

for i in $(seq 10 19);do
    chown user$i:user$i /tmp/file$i
done

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

(0)
chengyuchengyu
上一篇 2016-10-24 09:10
下一篇 2016-10-24 09:11

相關推薦

  • CentOS Linux解決Device eth0 does not seem to be present

    CentOS Linux解決Device eth0 does not seem to be present 今天早上打開xshell鏈接虛擬機,突然鏈接不上。然后進入虛擬機執行 ifconfig 或者 ip addr list 命令發現eth0 不見。然后執行重啟網卡命令發現  解決辦法:   首先,打開/etc/udev/rules.d/70-p…

    Linux干貨 2016-08-02
  • Linux基礎之創建私有CA過程詳解

    創建私有CA過程詳解 頒發CA自簽證書 創建序列號文件,序列號從01開始 echo 01 > /etc/pki/CA/serial 基于rsa算法生成非對稱加密的密鑰對 umask 077; openssl genrsa -out/etc/pki/CA/private/cakey.pem 2048 頒自簽證書 openssl req -new -x50…

    2017-09-16
  • Linux啟動和內核管理

                                        Linux啟動和內核管理 本章內容: centos5和centos6的啟動流程 服務管理 grub…

    系統運維 2016-09-21
  • 信息論的熵

    1.  前言    熵的概念最早起源于物理學,用于度量一個熱力學系統的無序程度。    在信息論里則叫信息量,即熵是對不確定性的度量。從控制論的角度來看,應叫不確定性。信息論的創始人香農在其著作《通信的數學理論》中提出了建立在概率統計模型上的信息度量。他把信息定義為“用來消除不確定性的東西”。在信息世界,熵越…

    Linux干貨 2016-03-27
  • Linux安全和openssl、gpg加密

                     Linux安全和openssl、gpg加密 本章內容: 安全機制 對稱加密 不對稱加密 散列算法 PKI和CA openssl 證書管理 gpg   加密需要: 不加密的流量易受攻擊性 密碼/數據嗅探 數據操作 驗證操作 相當…

    系統運維 2016-10-09
  • MariaDB數據類型總結

        數據類型是數據的一種屬性,它決定了數據的存儲格式、有效范圍及其它相應的限制。MariaDB的數據類型包括:字符型、整型、浮點值、日期時間型、布爾型及內建類型。 一、字符型     1、CHAR和VARCHAR類型     &nbsp…

    Linux干貨 2015-06-30

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-10-25 13:13

    相關知識擴展的很好,但排版有點欠火候,你可以咨詢一下455568219

欧美性久久久久