歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux技術 >> Linux第六周

Linux第六周

日期:2017/3/3 11:12:19   编辑:Linux技術

請詳細總結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

本文出自 “追夢” 博客,請務必保留此出處http://387227.blog.51cto.com/377227/1829824

Copyright © Linux教程網 All Rights Reserved