Linux常用Shell脚本珍藏
我們在運維中,尤其是linux運維,都知道腳本的重要性,腳本會讓我們的 運維事半功倍,所以學會寫腳本是我們每個linux運維必須學會的一門功課,這里收藏linux運維常用的腳本。如何學好腳本,最關鍵的是就是大量的練習 和實踐。根據以下腳本我們可以拓展,這樣我們提高的很快!舉一反三!
?
1.用Shell編程,判斷一文件是不是字符設備文件,如果是將其拷貝到 /dev 目錄下。
參考程序:
?
2.設計一個shell程序,添加一個新組為class1,然后添加屬于這個組的30個用戶,用戶名的形式為stdxx,其中xx從01到30。
參考答案:
3.編寫shell程序,實現自動刪除50個賬號的功能。賬號名為stud1至stud50。
?
參考程序:
4.某系統管理員需每天做一定的重復工作,請按照下列要求,編制一個解決方案:
(1)在下午4 :50刪除/abc目錄下的全部子目錄和全部文件;
(2)從早8:00~下午6:00每小時讀取/xyz目錄下x1文件中每行第一個域的全部數據加入到/backup目錄下的bak01.txt文件內;
(3)每逢星期一下午5:50將/data目錄下的所有目錄和文件歸檔并壓縮為文件:backup.tar.gz;
(4)在下午5:55將IDE接口的CD-ROM卸載(假設:CD-ROM的設備名為hdc);
(5)在早晨8:00前開機后啟動。
參考答案:
解決方案:
(1)用vi創建編輯一個名為prgx的crontab文件;
(2)prgx文件的內容:
?
(3)由超級用戶登錄,用crontab執行 prgx文件中的內容:
root@xxx:#crontab prgx;在每日早晨8:00之前開機后即可自動啟動crontab。
5.設計一個shell程序,在每月第一天備份并壓縮/etc目錄的所有內容,存放在/root/bak目錄里,且文件名為如下形式yymmdd_etc,yy為年,mm為月,dd為日。Shell程序fileback存放在/usr/bin目錄下。
?
參考答案:
(1)編寫shell程序fileback:
?
(2)編寫任務定時器:
?
6.有一普通用戶想在每周日凌晨零點零分定期備份/user/backup到/tmp目錄下,該用戶應如何做?
?
參考答案:
?
(1)第一種方法:
C代碼 ??
(2)第二種方法:
用戶先在自己目錄下新建文件file,文件內容如下:
然后執行 crontab file 使生效。
?
7.設計一個Shell程序,在/userdata目錄下建立50個目錄,即user1~user50,并設置每個目錄的權限,其中其他用戶的權限為:讀;文件所有者的權限為:讀、寫、執行;文件所有者所在組的權限為:讀、執行。
?
參考答案: 建立程序 Pro16如下:
?
8、mysql備份實例,自動備份mysql,并刪除30天前的備份文件
C代碼 ??
9、自動安裝Nginx腳本,采用case方式,選擇方式,也可以根據實際需求改成自己想要的腳本
C代碼 ??
10、批量解壓tar腳本,批量解壓zip并且建立當前目錄。
C代碼 ??
這個腳本是針對所有tar文件在一個目錄,但是實際情況中,有可能在下級或者更深的目錄,我們可以使用find查找
C代碼 ??
如何是zip文件,例如123189.zip 132342.zip 等等批量文件,默認unzip直接解壓不帶自身目錄,意思是解壓123189.zip完當前目錄就是圖片,不能創建123189目錄下并解壓,可以用shell腳本實現
C代碼 ??
原創文章轉載請注明: Linux常用Shell腳本珍藏 | 專注Unix/Linux領域
?
ssh 批量上傳文件
上傳文件大多數用的是ftp,但是用ftp有一點不好,就是本地和遠程的目錄要對應,這樣就要在多個目錄下去切換,這樣挺麻煩的,如果不注意的話,很有可能傳錯。所以想了個辦法利用scp來批量上傳文件或者目錄。
?
一,scp上傳不要輸入密碼
如果要用scp來上傳文件,第一步就要去掉scp上傳時要輸入密碼。要不然就沒辦法批量上傳了。具體請參考:ssh 不用輸入密碼
?
二,ssh批量上傳腳本
?
1,要上傳的文件列表放到一個test文件中
C代碼 ??
上面就要上傳的文件。
?
2,批量上傳的腳本
?
vim file_upload.sh
C代碼 ?上傳成功后,返回的是一個空行,上傳不成功,什么都不返回
?
3,上傳的格式
C代碼 ?test是上傳列表文件,192.168.1.13文件要傳到的地方。
0轉載請注明
作者:海底蒼鷹
地址:http://blog.51yip.com/linux/1356.html
?
1. 轉換文件大小寫:
A script to convert the specified filenames to lower case.
?
C代碼 ??
or
?
C代碼 ??
2. 看網站 Watch a Website
?
A script to repeated download a webpage until it matches a regex then notify an e-mail address.
For example to get e-mail when Kesha tickets (not for yourself of course) go on sale you might run:
?
C代碼 ??
3. 轉GIF到PNG convert GIF files to PNG
?
This scripts converts GIF files to PNG files via the intermediate PPM format.
?
C代碼 ??
4.? 計數 Counting
?
A utility script to print the sub-range of integers specified by its arguments.
Useful to use on the command line or from other scripts
?
C代碼 ??
5. 字頻率 Word Frequency
Count the number of time each different word occurs in the files given as arguments.
?
C代碼 ??
?
C代碼 ??
6. Finding
?
Search $PATH for the specified programs
C代碼 ??
Alternative implementation using while, and a cute use of grep and ||
C代碼 ??
And another implementation using while, and a cute use of grep and ||
C代碼 ??
來源: http://www.cse.unsw.edu.au/~cs2041/12s2/lec/shell/examples.notes.html
總結
以上是生活随笔為你收集整理的Linux常用Shell脚本珍藏的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 面试前必看:Redis 和 Memcac
- 下一篇: 简单的shell脚本实例