第六周:vim編輯器和cron計劃任務的使用練習

查看vim編輯器的使用介紹另見:http://afterdawn.blog.51cto.com/7503144/1855557

at及cront計劃任務介紹見:http://afterdawn.blog.51cto.com/7503144/1864365

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

命令模式下,輸入以下內容:
%s@\(^[[:space:]].*\)@#\1@g
或
%s@\(^[[:space:]]\+\)@#\1@g

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

命令模式下,輸入:
$s@^[[:space:]]\+@@g

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

命令模式下,輸入:
%s@^#[[:space:]]\+@@g

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

命令模式下,輸入:
1,3s@\(.*\)@#\1@g
或
1,3s@^@#@g

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

命令模式下,輸入:
%s@\(enabled=\|gpgcheck=\)0@\11@g

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

0 */4 * * * /bin/tar -zcvf /backup/etc-$(date +%Y%m%d%H%M).tar.gz /etc/ &>/dev/null

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

0 0 * * 2,4,6 /bin/tar -zxvf /backup/messages_logs/messages-$(date +%Y%m%d).tar.gz /var/log/messages &>/dev/null

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

0 */2 * * * /bin/grep "^S" /proc/meminfo >> /stats/memory.txt

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

0 */2 * * 1-5 /bin/echo ""howdy""

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

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

#!/bin/bash
dir=/tmp/testdir-$(date +%F)
[ ! -d $dir ] && mkdir $dir && cd $dir
for i in $(seq 100); do
        touch file$i
        let i++
done

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

通過腳本實現:

#!/bin/bash
for i in $(seq 2 2 100); do
        sed -n ${i}p /etc/passwd | cut -d: -f1
        let i+=2
done

通過命令實現:

sed -n 'n;p' /etc/passwd | cut -d: -f1

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

#!/bin/bash

for i in $(seq 10 19); do
        useradd user$i
        echo "user$i" | passwd --stdin user$i &>/dev/null
        let i++
done
tail -10 /etc/passwd | cut -d: -f1

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

    

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

#!/bin/bash

for i in $(seq 10 19); do
        useradd user$i
        touch /tmp/file$i
        chown user$i.user$i /tmp/file$i
        echo "user$i" | passwd --stdin user$i &>/dev/null
        let i++
done
tail -10 /etc/passwd | cut -d: -f1

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

(0)
dawningdawning
上一篇 2016-10-26 15:20
下一篇 2016-10-26 18:22

相關推薦

  • sed&awk

    Evernote Export 1、總結sed和awk的詳細用法; awk Linux文本處理工具三劍客:grep、sed和awk。其中grep是一種文本過濾工具,sed是文本編輯器,而awk是一種報表生成器,就是對文件進行格式化處理的,這里的格式化不是文件系統的格式化,而是對文件內容進行各種“排版”,進而格式化顯示。 在Linux之上我們使用的是GNU a…

    Linux干貨 2017-01-05
  • 第二天作業

    一、Linux 文件管理類命令   cd、pwd、mkdir、rmdir、ls、cp、rm、mv、cat、tac、more、less、head、tail、touch     1、目錄類相關命令     cd:change directory 切換目錄     pwd:print …

    Linux干貨 2016-08-22
  • 第六周作業

    第六周作業 1、復制/etc/rc.d/rc.sysinit文件至/tmp目錄,將/tmp/rc.sysinit文件中的以至少一個空白字符開頭的行的行首加#; cp /etc/rc.d/rc.sysinit /tmp vim /tmp/rc.sysinit :進入末行模式 % s/^[[:space:]]/#&…

    Linux干貨 2016-10-09
  • MySQL基礎知識

    1、SQL:結構化查詢語言(Structured Query Language): DDL:Data?Definition?Language(數據定義語言):?其語句包括動詞CREATE和DROP。在數據庫中創建新表或刪除表(CREAT TABLE?或?DROP TABLE);為表加入索引等。DDL包括許多與人數據庫目錄中獲得數據有關的保留字。它也是動作查詢…

    2017-11-20
  • systemd

    systemd 啟動流程:POST -> BIOS -> MBR bootloader -> kernel 臨時根 -> 根文件系統 -> init init 能夠管理、控制init進程的模塊,就是init系統 能夠讓系統在用戶預定義的級別下運行 設備管理器: sysvinit : CentOS 5 第一個廣泛應用的init系統…

    Linux干貨 2017-05-21
  • drbd+corosync+pacemaker

    存儲分類: DAS:直接附加存儲;例如ide,sata,scsi,sas等 NAS:網絡附加存儲;即文件級別共享存儲;例如nfs等 SAN:存儲區域網絡;即塊級別共享存儲;例如ip-san,fc-san   共享存儲選型比較: SAN性能優良,價格昂貴; NAS性能基于文件系統級別,性能低下; 因此,另一個DRBD誕生,全稱為分布式復制塊設備,Di…

    Linux干貨 2017-11-13
欧美性久久久久