cp [OPTION]... SOURCE(原文件)... DIRECTORY(目錄)shell
sed [options] 'command' file(s)編程
-i∶直接修改讀取的檔案內容,而不是由螢幕輸出。bash
vi中的末行模式:ssh
#,+#從左側#表示的行起始,加上右側#表示的行數;編輯器
%:全文 ide
s:在末行模式下完成查找替換操做
s/要查找的內容/替換爲的內容/修飾符
要查找的內容:可以使用模式
替換爲的內容:不能使用模式,但可使用\1,\2,...等後向引用符號;還可使用"g"引用前面查找時查找到的整行內容;oop
crontab [-e [UserName]|-l [UserName]|-r [UserName]|-v [UserName]|File ]
spa
-e [UserName]: 執行文字編輯器來設定時程表,內定的文字編輯器是 VI,若是你想用別的文字編輯器,則請先設定 VISUAL 環境變數來指定使用那個文字編輯器(好比說 setenv VISUAL joe)
-r [UserName]: 刪除目前的時程表
-l [UserName]: 列出目前的時程表
-v [UserName]:列出用戶cron做業的狀態命令行
crontab -e crontab
# 此時會進入 vi 的編輯畫面讓您編輯工做!注意到,每項工做都是一行。
#分 時 日 月 周 |<==============任務的完整命令行
* */2 */1 * * grep "^S" /proc/meminfo
cut [OPTION]... [FILE]...
-d DELIMITER: 指明分隔符
-f FILEDS:
#: 第#個字段
#,#[,#]:離散的多個字段,例如1,2,4
#-#:連續的多個字段,例如1-6
一、複製/etc/rc.d/rc.sysinit文件至/tmp目錄,將/tmp/rc.sysinit文件中的以致少一個空白字符開頭的行的行首加#;
|
|
二、複製/boot/grub/grub.conf至/tmp目錄中,刪除/tmp/grub.conf文件中的行首的空白字符;
|
|
三、刪除/tmp/rc.sysinit文件中的以#開頭,且後面跟了至少一個空白字符的行行的#和空白字符
|
|
四、爲/tmp/grub.conf文件中前三行的行首加#號;
|
|
五、將/etc/yum.repos.d/CentOS-Media.repo文件中全部的enabled=0或gpgcheck=0的最後的0修改成1;
|
|
六、每4小時執行一次對/etc目錄的備份,備份至/backup目錄中,保存的目錄名爲形如etc-201608300202
|
[root@loaclhost /]# crontab -e crontab: no changes made to crontab 00 */4 * * * cp -r /etc/ /backup/etc-`date +%Y%m%d%H%M` |
七、每週2,4,6備份/var/log/messages文件至/backup/messages_logs/目錄中,保存的文件名形如messages-20160830
|
|
八、天天每兩小時取當前系統/proc/meminfo文件中的全部以S開頭的信息至/stats/memory.txt文件中
[root@loaclhost /]# crontab -e crontab: no changes made to crontab 00 */2 */1 * * grep "^S" /proc/meminfo >> /stats/memory.txt |
九、工做日的工做時間內,每兩小時執行一次echo "howdy"
[root@loaclhost /]# crontab -e crontab: no changes made to crontab 00 9-18/2 * * */1-5 echo "howdy" |
腳本編程練習
十、建立目錄/tmp/testdir-當前日期時間;
|
十一、在此目錄建立100個空文件:file1-file100
|
十二、顯示/etc/passw d文件中位於第偶數行的用戶的用戶名;
|
1三、建立10用戶user10-user19;密碼同用戶名;
[root@loaclhost ~]# cat /do/useradd.sh #!/bin/bash for i in {10..19};do if id user$i &>/dev/null;then echo "user$i exists." else useradd user$i if [ $? -eq 0 ];then echo "user$i" | passwd --stdin user$i &> /dev/null echo "Add user$i finished." fi fi done [root@loaclhost ~]# chmod +x /do/useradd.sh [root@loaclhost ~]# ../do/useradd.sh UserAdd user10 finish. UserAdd user11 finish. UserAdd user12 finish. UserAdd user13 finish. UserAdd user14 finish. UserAdd user15 finish. UserAdd user16 finish. UserAdd user17 finish. UserAdd user18 finish. UserAdd user19 finish |
1四、在/tmp/建立10個空文件file10-file19;
[root@loaclhost home]# cat /do/file.sh #!/bin/bash for i in {10..19};do touch /tmp/file$i done [root@loaclhost home]# chmod +x /do/file.sh [root@loaclhost home]# ../do/file.sh [root@loaclhost home]# ll /tmp/ | grep 'file' -rw-r--r--. 1 root root 0 8月 16 23:17 file10 -rw-r--r--. 1 root root 0 8月 16 23:17 file11 -rw-r--r--. 1 root root 0 8月 16 23:17 file12 -rw-r--r--. 1 root root 0 8月 16 23:17 file13 -rw-r--r--. 1 root root 0 8月 16 23:17 file14 -rw-r--r--. 1 root root 0 8月 16 23:17 file15 -rw-r--r--. 1 root root 0 8月 16 23:17 file16 -rw-r--r--. 1 root root 0 8月 16 23:17 file17 -rw-r--r--. 1 root root 0 8月 16 23:17 file18 -rw-r--r--. 1 root root 0 8月 16 23:17 file19 |
1五、把file10的屬主和屬組改成user10,依次類推。
[root@loaclhost home]# cat /do/file-user.sh #!/bin/bash cd /tmp for i in {10..19};do chown user$i:user$i /tmp/file$i done [root@loaclhost home]# chmod +x /do/file-user.sh [root@loaclhost home]# ll /tmp/ | grep 'file'-rw-r--r--. 1 user10 user10 0 8月 16 23:17 file10-rw-r--r--. 1 user11 user11 0 8月 16 23:17 file11-rw-r--r--. 1 user12 user12 0 8月 16 23:17 file12-rw-r--r--. 1 user13 user13 0 8月 16 23:17 file13-rw-r--r--. 1 user14 user14 0 8月 16 23:17 file14-rw-r--r--. 1 user15 user15 0 8月 16 23:17 file15-rw-r--r--. 1 user16 user16 0 8月 16 23:17 file16-rw-r--r--. 1 user17 user17 0 8月 16 23:17 file17-rw-r--r--. 1 user18 user18 0 8月 16 23:17 file18-rw-r--r--. 1 user19 user19 0 8月 16 23:17 file19 |