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

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

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

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

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

[root@localhost ~]# cp /boot/grub/grub.conf /tmp/
[root@localhost ~]# vim /tmp/grub.conf 
:%s/^[[:space:]]//

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

[root@localhost ~]# vim /tmp/rc.sysinit 
:%s/^#[[:space:]]\+//

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

[root@localhost ~]# vim /tmp/grub.conf 
:1,3s/^/#/

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

[root@localhost ~]# vim /etc/yum.repos.d/CentOS-Media.repo
:%s/enabled=0/enabled=1
:%s/gpgcheck=0/gpcheck=1

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

[root@localhost ~]# mkdir /backup
[root@localhost ~]# echo 'tar cf /backup/etc-$(date +%Y%m%d%H%M) /etc/*' > /root/back.sh 
[root@localhost ~]# crontab -e
0 */4  * * * bash /root/back.sh &>/dev/null

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

[root@localhost ~]# mkdir /backup/messages_logs
[root@localhost ~]# echo 'tar cf /backup/messages_logs/messages-$(date +%Y%m%d)' > /root/back.sh 
[root@localhost ~]# crontab -e
* *  * * 2,4,6 bash /root/back.sh &>/dev/null

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

[root@localhost ~]# echo 'grep ^S /proc/meminfo >> /stats/memory.txt ' > /root/back.sh 
[root@localhost ~]# crontab -e
0 */2 * * * bash /root/back.sh &>/dev/null

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

[root@localhost ~]# crontab -e
0 11,13,15,17 * * 1-5 echo "howdy"

腳本編程練習

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

[root@localhost ~]# cat test10.sh 
#!/bin/bash
mkdir  /tmp/testdir-$(date +%Y%m%d-%H%M%S)

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

[root@localhost testdir-20160721-201246]# cat test11.sh 
#!/bin/bash
for i in {1..100};
do
        touch file$i
done
[root@localhost testdir-20160721-201246]# ls
file1    file2   file30  file41  file52  file63  file74  file85  file96
file10   file20  file31  file42  file53  file64  file75  file86  file97
file100  file21  file32  file43  file54  file65  file76  file87  file98
file11   file22  file33  file44  file55  file66  file77  file88  file99
file12   file23  file34  file45  file56  file67  file78  file89  test11.sh
file13   file24  file35  file46  file57  file68  file79  file9
file14   file25  file36  file47  file58  file69  file8   file90
file15   file26  file37  file48  file59  file7   file80  file91
file16   file27  file38  file49  file6   file70  file81  file92
file17   file28  file39  file5   file60  file71  file82  file93
file18   file29  file4   file50  file61  file72  file83  file94
file19   file3   file40  file51  file62  file73  file84  file95

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

[root@localhost ~]# cat test12.sh 
#!/bin/bash
sed -n 'n;p' /etc/passwd | cut -d: -f1
[root@localhost ~]# bash test12.sh 
bin
adm
sync
halt
uucp
games
ftp
dbus
vcsa
rtkit
abrt
nfsnobody
gdm
apache
postfix
sshd
named

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

#!/bin/bash

for i in {10..19}
do
        id user$i &> /dev/null
        if [ $? -ne 0 ];then
                useradd user$i
                echo user$i:user$i | chpasswd
        else
                echo "user$i existed!"
        fi
done

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

[root@localhost tmp]# cat test14.sh 

#!/bin/bash
for i in {10..19}
do
        if [ -f file$i ];then
                echo "file $i existed!"
        else
                touch file$i
        fi
done

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

[root@localhost tmp]# cat test15.sh 
#!/bin/bash
for i in {10..19}
do
        chown user$i:user$i file$i
done

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

(0)
N21-天天N21-天天
上一篇 2016-08-02
下一篇 2016-08-02

相關推薦

  • 使用pyenv管理不同版本的python

    安裝: 安裝: $ curl -L https://raw.githubusercontent.com/yyuu/pyenv-installer/master/bin/pyenv-installer | bash 在你的shellrc文件中添加: export PATH=”$HOME/.pyenv/bin:$PATH” eval “$(pyenv init …

    Linux干貨 2015-03-12
  • 第二周作業

    Linux上的文件管理類命令都有哪些,其常用的使用方法及其相關示例演示。 cp 文件復制     常用選項:            -i:交互式        …

    Linux干貨 2016-11-06
  • 基于samba服務的wordpress站點

    實驗要求:             (1) samba server導出/data/app/web,在目錄中提供wordpress;     (2) samba  client掛載nfs server導出的文件…

    2017-06-08
  • Linux第四周學習博客作業

    對第四周學習的內容進行總結

    Linux干貨 2017-12-23
  • DHCP使用幫助

    bootp 想要通過tcp/ip模型進行網絡通信需要有一個ip地址,IP地址是屬于操作系統的,所以沒有操作系統就沒有ip 為了解決這種問題,有一種網卡可以不需要操作系統就能獲取到ip bootp:只有第一次是動態獲得,以后ip地址就是和mac地址綁定的,不能分配給其他主機 DHCP:DHCP是bootp的改進版,主要引入了租約的定義 DHCP也可以根據mac…

    Linux干貨 2016-11-11
  • 基于ansible自動部署keepalived+nginx來調度amp

    實戰作業: (1) 主/備模型的keepalived+nginx (2) httpd+php+php-mysql (3) mysql-server或mariadb-server         擁有testdb庫,并允許testuser對其擁有所有權限 實驗環境: 主機1:10.…

    Linux干貨 2016-11-07

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-08-02 11:29

    寫的很好,排版也很棒,加油,工作時間是從9點開始吧,在仔細看看第7個對嗎?

欧美性久久久久