Linux運転メンテナンス学習-6週目のジョブ


練習問題:1、コピー/etc/rc.d/rc.Sysinitファイルを/tmpディレクトリに、/tmp/rc.Sysinitファイルの少なくとも1つの空白文字で始まる行の行に番号を付ける.
:%s@^[[:space:]]\+@#&@g
2、コピー/boot/grub/grub.confから/tmpディレクトリに/tmp/grubを削除する.confファイルの行頭の空白文字;
:%s@^[:space:]+@@g 3、削除/tmp/rc.Sysinitファイルの#で始まり、少なくとも1つの空白文字が続く行の#と空白文字.
:%s@^#[::space:]+@@g 4、/tmp/grub.confファイルの最初の3行の行に番号を付ける.
:1,3s@.*@#&@g 5、/etc/yum.repos.d/CentOS-Media.repoファイル内のすべてのenabled=0またはgpgcheck=0の最後の0を1に変更します.
:%s@\(enabled\|gpgcheck\)=0@\1=1@g
6、4時間ごとに/etcディレクトリのバックアップを実行し、/backupディレクトリにバックアップし、保存したディレクトリ名はetc-201504020202のようである.
0 */4 * * * root cp -r/etc//backup/etc-$(date +%Y%m%d%H%M)
7、毎週2、4、6バックアップ/var/log/messagesファイルから/backup/messages_logs/ディレクトリには、messages-20150402のようなファイル名が保存されています.
0 0 * * 2,4,6 root cp -r/var/log/messages/backup/messages_logs/messages-$(date+%Y%m%d)8、現在のシステム/proc/meminfoファイルのSで始まるすべての情報を毎日2時間ごとに/stats/memoryに取得する.txtファイル;
0 */2 * * * root grep "^S"/proc/meminfo >>/stats/memory.txt 9、平日の勤務時間内に、2時間ごとにecho「howdy」を実行する.
0 9-17/2**1-5 root echo「howdy」スクリプトプログラミング練習:10、ディレクトリの作成/tmp/testdir-現在の日付時間;
#!/bin/bash
mkdir /tmp/testdir-$(date +%Y%m%d%H%M)

11、このディレクトリに100個の空のファイルを作成する:file 1-file 100;
#!/bin/bash
for(i=1;i<=100;i++) {
touch /tmp/testdir-$(date +%Y%m%d%H%M)/file$i
}

12、偶数行目にある/etc/passwdファイルのユーザー名を表示する.
#!/bin/bash
sed -n 'n;p' /etc/passwd | cut -d: -f1

13、10ユーザーuser 10-user 19を作成する.パスワードはユーザー名と同じです.
#!/bin/bash
for(i=10;i<=19;i++) {
useradd user$i
echo "user$i" | passwd --stdin user$i &> /dev/null
}

14、/tmp/に10個の空ファイルfile 10-file 19を作成する.
#!/bin/bash
for(i=10;i<=19;i++) {
touch /tmp/file$i
}

15、file 10の属主と属群をuser 10に変更し、順次類推する.
#!/bin/bash
for(i=10;i<=19;i++) {
chown user$i:user$i file$i
}