N26第六周博客作業

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

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

 

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

 

 

 

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

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

 

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

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

 

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

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

 

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

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

                                                                             

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

crontab -e 進入編輯界面

0 */4 * * *
cp -a /etc /backup/etc-‘date +\%Y\%m\%d\%H\%M’

 

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

crontab -e 進入編輯界面

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

 

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

crontab -e 進入編輯界面

0 */2 * * * 
/bin/cat /proc/meminfo | /bin/grep “^S” >>
/stats/memory.txt

 

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

crontab -e 進入編輯界面

0 9-17/2 * *
1-5 /bin/echo “howdy”

 

腳本編程練習

10、           創建目錄/tmp/testdir-當前日期時間;

 

#!/bin/bash

#

Time=$(date
+%F-%T)

mkdir
/tmp/testdir-“$Time”

 

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

#!/bin/bash

#

Time=$(date
+%F-%T)

mkdir
/tmp/testdir-“$Time”

cd /tmp/testdir-“$Time”

for i in
$(seq 1 100) ; do

        if 
[ -f file$i ] ; then

                echo “file$i is
exist”

        else

                touch file$i

        fi

done

 

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

sed -n ‘2~2p’
/etc/passwd  | awk -F: ‘{print $1}’

 

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

 

#!/bin/bash

#

for i in
{10..19} ; do

        if id user”$i” >/dev/null
2>&1 ; then

                echo “user$i is
exist!”

        else

               useradd user$i

               echo “user$i” | passwd
–stdin user$i >/dev/null 2>&1

        fi

done

 

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

#!/bin/bash

#

for i in
$(seq 10 19) ; do

if [ -f file$i ] ; then

           echo “File “file$i” is already exists
!”

else

           cd /tmp ; touch file$i

fi

done

 

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

 

#!/bin/bash

#

for i in
{10..19} ; do

        if [ -f /tmp/file$i ] ; then

                chown user$i:user$i /tmp/file$i

        else

                echo “File “file$i” is not
exists !”

        fi

done

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

(0)
天空天空
上一篇 2017-03-13 15:29
下一篇 2017-03-13 21:01

相關推薦

  • N22-第九周作業

    1、寫一個腳本,判斷當前系統上所有用戶的shell是否為可登錄shell(即用戶的shell不是/sbin/nologin);分別這兩類用戶的個數;通過字符串比較來實現; #!/bin/bash # declare -i count1=0 declare -i count2=0 for i in $(awk -F : '{print $7}&#03…

    Linux干貨 2016-10-17
  • 步入LINUX

    初次融入LINUX的環境。。。

    Linux干貨 2018-03-26
  • Linux的哲學思想第二篇

    Linux的哲學思想 一切皆文件 物理終端 物理終端指的是顯示器等硬件終端設備,文件存在于 /dev/console 這個路徑下 虛擬終端 虛擬終端指的是在linux命令行連接的終端,文件存在于 /dev/tty# [1,6] 這個路徑下 串行終端 指的是使用計算機串行端口連接的終端設備,文件存在于 /dev/ttyS# 這個路徑下 偽終端 指的是在Xshe…

    2018-02-26
  • mysql數據庫及表的管理

    MySQL中字符大小寫: 1、SQL關鍵字及函數名不區分字符大小寫; 2、數據庫、表及視圖名稱的大小區分與否取決于低層OS及FS 3、存儲過程、存儲函數及事件調度器的名字不區分大小寫,但觸發器區分; 4、表別名區分大不寫; 5、對字段中的數據,如果字段類型為Binary類型,則區分大小寫;非Binary不區分大小寫; 數據庫: CREATE {DATABAS…

    Linux干貨 2015-06-01
  • 第七周作業

    1、創建一個10G分區,并格式為ext4文件系統;   (1) 要求其block大小為2048, 預留空間百分比為2, 卷標為MYDATA, 默認掛載屬性包含acl;   (2) 掛載至/data/mydata目錄,要求掛載時禁止程序自動運行,且不更新文件的訪問時間戳; [root@localhost ~]# fdis…

    Linux干貨 2017-07-04
  • Linux終端類型介紹

    相關命令:tty 適合閱讀人群:所有   終端機 終端(Computer terminal),是一臺電子計算機或者計算機系統,用來讓用戶輸入數據,及顯示其計算結果的機器。又名終端機,它與一部獨立的電腦不同,其實就是一種輸入輸出設備,一臺電腦多人使用,每增加一個用戶只須增加一臺顯示器和一套鍵盤鼠標就可以成為一個獨立的終端,多用戶可同時使用互相獨立,跟…

    Linux干貨 2016-10-14
欧美性久久久久