出版時間:2011-11 出版社:人民郵電 作者:(印)拉克什曼 頁數(shù):254 譯者:門佳
Tag標簽:無
內容概要
天才程序員的獨門攻略:準備,動手,一舉成功!,針對1
10多個真實問題,展示令人難以置信的高超解法,化繁為簡,幾行腳本完成復雜任務。
《Linux Shell腳本攻略》通過細致剖析實際應用中的110多個案例。使許多看似復雜的Linux
shell腳本任務迎刃而解。
作者在Linux shell腳本方面的經驗,使他能夠以一種相當清晰且友好的方式有效地分享他的知識?!禠inux
Shell腳本攻略》會幫助讀者利用少量命令的組合完成諸如文本處理、文件管理、備份等復雜的數(shù)據(jù)管理工作。
《Linux Shell腳本攻略》將告訴你如何:
利用shell命令快速開發(fā)常規(guī)任務;
綜合應用grep、find、sed和awk等常用命令;
憑借短短幾個命令行從Web挖掘數(shù)據(jù)的shell腳本;
利用歸檔工具運行并自動化各種任務,諸如自動備份和存儲;
理解文件系統(tǒng)、文件類型以及文件管理;
用shell創(chuàng)建以及維護文件或目錄歸檔、壓縮格式和加密技術;
通過srlell腳本設置以太網和無線LAN;
使用登錄技術監(jiān)控網絡上的各種動態(tài);
直截了當而便于應用的寫作風格,常見任務和問題的精挑細選,針對問題而精心組織的高效解法,對實際操作的細致分析,對擴展解決方案的深入探討。
作者簡介
(印度)拉克什曼 (Sarath Lakshman) 譯者:門佳
Sarath
Lakshman,年輕的Linux天才程序員、開源軟件及GNU/Linux活躍分子,寫作本書時年僅20歲。他在印度出生并成長,目前是印度科欽科技大學模范工程學院的學生。2004年,他就開發(fā)了名為Slynux的GNU/Linux發(fā)布版。另外,他還為Linux
Foryou月刊撰寫文章。在Fedora、Pardus Linux、PiTiVi、Ubuntu以及Google Summerof
Code等項目中,他都作出了顯著的貢獻。
門佳,Unux/Unixshell、PerI、正則表達式愛好者。2001年開始接觸Linux,并喜歡上了這個系統(tǒng),從此發(fā)現(xiàn)了另一個不同的世界。同時對網絡協(xié)議分析、Web技術以及社會心理學也頗有興趣。除此之外。還是一位輕度宅男、豆瓣控。
書籍目錄
第1章 小試牛刀
1.1 簡介
1.2 終端打印
1.2.1 實戰(zhàn)演練
1.2.2 補充內容
1.3 玩轉變量和環(huán)境變量
1.3.1 預備知識
1.3.2 實戰(zhàn)演練
1.3.3 補充內容
1.4 通過shell進行數(shù)學運算
1.4.1 預備知識
1.4.2 實戰(zhàn)演練
1.5 玩轉文件描述符和重定向
1.5.1 預備知識
1.5.2 實戰(zhàn)演練
1.5.3 補充內容
1.6 數(shù)組和關聯(lián)數(shù)組
1.6.1 預備知識
1.6.2 實戰(zhàn)演練
1.6.3 補充內容
1.7 使用別名
1.7.1 預備知識
1.7.2 實戰(zhàn)演練
1.7.3 補充內容
1.8 獲取終端信息
1.8.1 預備知識
1.8.2 實戰(zhàn)演練
1.9 獲取、設置日期和延時
1.9.1 預備知識
1.9.2 實戰(zhàn)演練
1.9.3 補充內容
1.10 調試腳本
1.10.1 預備知識
1.10.2 實戰(zhàn)演練
1.10.3 補充內容
1.11 函數(shù)和參數(shù)
1.11.1 實戰(zhàn)演練
1.11.2 補充內容
1.12 讀取命令序列輸出
1.12.1 預備知識
1.12.2 實戰(zhàn)演練
1.12.3 補充內容
1.13 以不按回車鍵的方式讀取字符“n”
1.13.1 預備知識
1.13.2 實戰(zhàn)演練
1.14 字段分隔符和迭代器
1.14.1 預備知識
1.14.2 實戰(zhàn)演練
1.15 比較與測試
1.15.1 預備知識
1.15.2 實戰(zhàn)演練
第2章 命令之樂
2.1 簡介
2.2 用cat進行拼接
2.2.1 預備知識
2.2.2 實戰(zhàn)演練
2.2.3 工作原理
2.2.4 補充內容
2.3 錄制與回放終端會話
2.3.1 預備知識
2.3.2 實戰(zhàn)演練
2.3.3 工作原理
2.4 文件查找與文件列表
2.4.1 預備知識
2.4.2 實戰(zhàn)演練
2.4.3 補充內容
2.5 玩轉xargs
2.5.1 預備知識
2.5.2 實戰(zhàn)演練
2.5.3 工作原理
2.5.4 補充內容
2.6 用tr進行轉換
2.6.1 預備知識
2.6.2 實戰(zhàn)演練
2.6.3 工作原理
2.6.4 補充內容
2.7 校驗和與核實
2.7.1 預備知識
2.7.2 實戰(zhàn)演練
2.7.3 工作原理
2.7.4 補充內容
2.8 排序、單一與重復
2.8.1 預備知識
2.8.2 實戰(zhàn)演練
2.8.3 工作原理
2.8.4 補充內容
2.9 臨時文件命名與隨機數(shù)
2.9.1 實戰(zhàn)演練
2.9.2 工作原理
2.10 分割文件和數(shù)據(jù)
2.10.1 工作原理
2.10.2 補充內容
2.11 根據(jù)擴展名切分文件名
2.11.1 實戰(zhàn)演練
2.11.2 工作原理
2.12 批量重命名和移動
2.12.1 預備知識
2.12.2 實戰(zhàn)演練
2.12.3 工作原理
2.13 拼寫檢查與詞典操作
2.13.1 實戰(zhàn)演練
2.13.2 工作原理
2.14 交互輸入自動化
2.14.1 預備知識
2.14.2 實戰(zhàn)演練
2.14.3 工作原理
2.14.4 補充內容
第3章 以文件之名
3.1 簡介
3.2 生成任意大小的文件
3.3 文本文件的交集與差集
3.3.1 預備知識
3.3.2 實戰(zhàn)演練
3.4 查找并刪除重復文件
3.4.1 預備知識
3.4.2 實戰(zhàn)演練
3.4.3 工作原理
3.4.4 參考
3.5 創(chuàng)建長路徑目錄
3.5.1 預備知識
3.5.2 實戰(zhàn)演練
3.6 文件權限、所有權和粘滯位
3.6.1 預備知識
3.6.2 實戰(zhàn)演練
3.6.3 補充內容
3.7 創(chuàng)建不可修改文件
3.7.1 預備知識
3.7.2 實戰(zhàn)演練
3.8 批量生成空白文件
3.8.1 預備知識
3.8.2 實戰(zhàn)演練
3.9 查找符號鏈接及其指向目標
3.9.1 預備知識
3.9.2 實戰(zhàn)演練
3.10 列舉文件類型統(tǒng)計信息
3.10.1 預備知識
3.10.2 實戰(zhàn)演練
3.10.3 工作原理
3.11 環(huán)回文件與掛載
3.11.1 預備知識
3.11.2 實戰(zhàn)演練
3.11.3 補充內容
3.12 生成ISO文件及混合ISO
3.12.1 預備知識
3.12.2 實戰(zhàn)演練
3.12.3 補充內容
3.13 查找文件差異并進行修補
3.13.1 實戰(zhàn)演練
3.13.2 補充內容
3.14 head與tail——打印文件的前10行和后10行
3.15 只列出目錄的其他方法
3.15.1 預備知識
3.15.2 實戰(zhàn)演練
3.16 在命令行中用pushd和popd快速定位
3.16.1 預備知識
3.16.2 實戰(zhàn)演練
3.16.3 補充內容
3.17 統(tǒng)計文件的行數(shù)、單詞數(shù)和字符數(shù)
3.17.1 預備知識
3.17.2 實戰(zhàn)演練
3.17.3 補充知識
3.18 打印目錄樹
3.18.1 預備知識
3.18.2 實戰(zhàn)演練
3.18.3 補充內容
第4章 讓文本飛
4.1 簡介
4.2 正則表達式入門
4.2.1 預備知識
4.2.2 實戰(zhàn)演練
4.2.3 工作原理
4.2.4 補充內容
4.3 用grep在文件中搜索文本
4.3.1 預備知識
4.3.2 實戰(zhàn)演練
4.3.3 補充內容
4.4 用cut按列切分文件
4.4.1 預備知識
4.4.2 實戰(zhàn)演練
4.4.3 補充內容
4.5 統(tǒng)計特定文件中的詞頻
4.5.1 預備知識
4.5.2 實戰(zhàn)演練
4.5.3 工作原理
4.5.4 參考
4.6 sed入門
4.6.1 實戰(zhàn)演練
4.6.2 補充內容
4.7 awk入門
4.7.1 實戰(zhàn)演練
4.7.2 工作原理
4.7.3 補充內容
4.8 替換文本或文件中的字符串
4.8.1 預備知識
4.8.2 實戰(zhàn)演練
4.8.3 補充內容
4.8.4 參考
4.9 壓縮或解壓縮JavaScript
4.9.1 預備知識
4.9.2 工作原理
4.9.3 工作原理
4.9.4 參考
4.10 對文件中的行、單詞和字符進行迭代
4.10.1 預備知識
4.10.2 實戰(zhàn)演練
4.10.3 工作原理
4.10.4 參考
4.11 按列合并文件
4.11.1 工作原理
4.11.2 參考
4.12 打印文件或行中的第n個單詞或列
4.12.1 預備知識
4.12.2 實戰(zhàn)演練
4.12.3 參考
4.13 打印不同行或樣式之間的文本
4.13.1 預備知識
4.13.2 實戰(zhàn)演練
4.13.3 參考
4.14 用腳本檢驗回文字符串
4.14.1 預備知識
4.14.2 工作原理
4.14.3 工作原理
4.14.4 補充內容
4.14.5 參考
4.15 以逆序形式打印行
4.15.1 預備知識
4.15.2 實戰(zhàn)演練
4.15.3 工作原理
4.15.4 參考
4.16 解析文本中的電子郵件地址和URL
4.16.1 預備知識
4.16.2 實戰(zhàn)演練
4.16.3 工作原理
4.16.4 參考
4.17 打印文件中某個樣式之前或之后的n行
4.17.1 預備知識
4.17.2 實戰(zhàn)演練
4.17.3 參考
4.18 在文件中移除包含某個單詞的句子
4.18.1 預備知識
4.18.2 實戰(zhàn)演練
4.18.3 工作原理
4.18.4 參考
4.19 用awk實現(xiàn)head、tail和tac
4.19.1 預備知識
4.19.2 實戰(zhàn)演練
4.19.3 工作原理
4.19.4 參考
4.20 文本切片與參數(shù)操作
4.20.1 實戰(zhàn)演練
4.20.2 參考
第5章 一團亂麻?沒這回事
5.1 入門
5.2 網站下載
5.2.1 預備知識
5.2.2 實戰(zhàn)演練
5.2.3 補充內容
5.3 以格式化純文本形式下載網頁
5.4 cURL入門
5.4.1 預備知識
5.4.2 實戰(zhàn)演練
5.4.3 補充內容
5.4.4 參考
5.5 從命令行訪問Gmail
5.5.1 實戰(zhàn)演練
5.5.2 工作原理
5.5.3 參考
5.6 解析網站數(shù)據(jù)
5.6.1 實戰(zhàn)演練
5.6.2 工作原理
5.6.3 參考
5.7 制作圖片抓取器及下載工具
5.7.1 實戰(zhàn)演練
5.7.2 工作原理
5.7.3 參考
5.8 網頁相冊生成器
5.8.1 預備知識
5.8.2 實戰(zhàn)演練
5.8.3 工作原理
5.8.4 參考
5.9 Twitter命令行客戶端
5.9.1 預備知識
5.9.2 實戰(zhàn)演練
5.9.3 工作原理
5.9.4 參考
5.10 基于Web后端的定義查詢工具
5.10.1 預備知識
5.10.2 實戰(zhàn)演練
5.10.3 工作原理
5.10.4 參考
5.11 查找網站中的無效鏈接
5.11.1 預備知識
5.11.2 實戰(zhàn)演練
5.11.3 工作原理
5.11.4 參考
5.12 跟蹤網站變更
5.12.1 預備知識
5.12.2 實戰(zhàn)演練
5.12.3 工作原理
5.12.4 參考
5.13 以POST方式發(fā)送網頁并讀取響應
5.13.1 預備知識
5.13.2 實戰(zhàn)演練
5.13.3 補充內容
5.13.4 參考
第6章 B計劃
6.1 簡介
6.2 用tar歸檔
6.2.1 預備知識
6.2.2 實戰(zhàn)演練
6.2.3 補充知識
6.2.4 參考
6.3 用cpio歸檔
6.4 用gunzip或gzip壓縮
6.4.1 實戰(zhàn)演練
6.4.2 補充內容
6.4.3 參考
6.5 用bunzip或bzip壓縮
6.5.1 實戰(zhàn)演練
6.5.2 補充內容
6.5.3 參考
6.6 用lzma壓縮
6.6.1 實戰(zhàn)演練
6.6.2 補充內容
6.6.3 參考
6.7 用zip歸檔和壓縮
6.8 超高壓縮率的squashfs文件系統(tǒng)
6.8.1 預備知識
6.8.2 實戰(zhàn)演練
6.8.3 補充內容
6.9 加密工具與散列
6.10 用raync備份系統(tǒng)快照
6.10.1 實戰(zhàn)演練
6.10.2 補充內容
6.11 用Git備份版本控制
6.11.1 預備知識
6.11.2 實戰(zhàn)演練
6.12 用dd克隆磁盤
6.12.1 預備知識
6.12.2 實戰(zhàn)演練
6.12.3 補充內容
6.12.4 參考
第7章 無網不利
7.1 簡介
7.2 聯(lián)網知識入門
7.2.1 新手上路
7.2.2 實戰(zhàn)演練
7.2.3 補充內容
7.2.4 參考
7.3 使用ping
7.3.1 實戰(zhàn)演練
7.3.2 補充內容
7.4 列出網絡上所有的活動主機
7.4.1 新手上路
7.4.2 實戰(zhàn)演練
7.4.3 工作原理
7.4.4 補充內容
7.4.5 參考
7.5 傳輸文件
7.5.1 新手上路
7.5.2 實戰(zhàn)演練
7.5.3 補充內容
7.5.4 參考
7.6 用腳本設置以太網與無線LAN
7.6.1 新手上路
7.6.2 實戰(zhàn)演練
7.6.3 工作原理
7.6.4 參考
7.7 用SSH實現(xiàn)無密碼自動登錄
7.8 用SSH在遠程主機上運行命令
7.8.1 新手上路
7.8.2 實戰(zhàn)演練
7.8.3 補充內容
7.8.4 參考
7.9 在本地掛載點上掛載遠程驅動器
7.9.1 新手上路
7.9.2 實戰(zhàn)演練
7.9.3 參考
7.10 在網絡上發(fā)送多播式窗口消息
7.10.1 新手上路
7.10.2 實戰(zhàn)演練
7.10.3 工作原理
7.10.4 參考
7.11 網絡流量與端口分析
7.11.1 新手上路
7.11.2 實戰(zhàn)演練
7.11.3 補充內容
第8章 當個好管家
8.1 簡介
8.2 統(tǒng)計磁盤的使用情況
8.2.1 新手上路
8.2.2 實戰(zhàn)演練
8.2.3 補充內容
8.3 計算命令執(zhí)行時間
8.4 與當前登錄用戶、啟動日志及啟動故障的相關信息
8.4.1 新手上路
8.4.2 實戰(zhàn)演練
8.5 打印出10條最常使用的命令
8.5.1 新手上路
8.5.2 實戰(zhàn)演練
8.5.3 工作原理
8.6 列出1小時內占用CPU最多的10個進程
8.6.1 新手上路
8.6.2 實戰(zhàn)演練
8.6.3 工作原理
8.6.4 參考
8.7 用watch監(jiān)視命令輸出
8.7.1 實戰(zhàn)演練
8.7.2 補充內容
8.8 對文件及目錄訪問進行記錄
8.8.1 新手上路
8.8.2 實戰(zhàn)演練
8.8.3 工作原理
8.9 用logrotate管理日志文件
8.9.1 新手上路
8.9.2 實戰(zhàn)演練
8.10 用syslog記錄日志
8.10.1 新手上路
8.10.2 實戰(zhàn)演練
8.10.3 參考
8.11 通過監(jiān)視用戶登錄找出入侵者
8.11.1 新手上路
8.11.2 實戰(zhàn)演練
8.11.3 工作原理
8.12 監(jiān)視遠程磁盤的健康情況
8.12.1 新手上路
8.12.2 實戰(zhàn)演練
8.12.3 工作原理
8.12.4 參考
8.13 找出系統(tǒng)中用戶的活動時段
8.13.1 新手上路
8.13.2 實戰(zhàn)演練
8.13.3 工作原理
第9章 管理重任
9.1 簡介
9.2 收集進程信息
9.2.1 新手上路
9.2.2 實戰(zhàn)演練
9.2.3 補充內容
9.2.4 參考
9.3 殺死進程以及發(fā)送或響應信號
9.3.1 新手上路
9.3.2 實戰(zhàn)演練
9.3.3 補充內容
9.4 which、whereis、file、whatis與平均負載
9.5 向用戶終端發(fā)送消息
9.5.1 新手上路
9.5.2 實戰(zhàn)演練
9.5.3 工作原理
9.6 收集系統(tǒng)信息
9.7 用/proc收集信息
9.8 用cron進行調度
9.8.1 新手上路
9.8.2 實戰(zhàn)演練
9.8.3 補充內容
9.9 從Bash中讀寫MySQL數(shù)據(jù)庫
9.9.1 新手上路
9.9.2 實戰(zhàn)演練
9.9.3 工作原理
9.10 用戶管理腳本
9.10.1 實戰(zhàn)演練
9.10.2 工作原理
9.11 圖像文件的批量縮放及格式轉換
9.11.1 新手上路
9.11.2 實戰(zhàn)演練
9.11.3 工作原理
9.11.4 參考
章節(jié)摘錄
版權頁:插圖:校驗和(checksum)程序用來從文件中生成校驗和密鑰,然后利用這個校驗和密鑰核實文件的完整性。一份文件可以通過網絡或任何存儲介質分發(fā)到不同的地點。出于多種原因,數(shù)據(jù)有可能在傳輸過程中丟失了若干位,從而導致文件損壞。這種錯誤通常發(fā)生在從Internet上下載文件時,或者通過網絡傳輸文件時,或者遭遇CD光盤損壞等。因此,我們需要采用一些測試方法來確定接收到的文件是否存在錯誤。用于文件完整性測試的特定密鑰就被稱為校驗和。我們對原始文件和接收到的文件都進行校驗和計算。通過比對兩者的校驗和,就能夠核實接收到的文件是否正確。如果校驗和(一個來自源位置的原始文件,另一個來自目的地的接收文件)相等,就意味著我們接收到了正確的文件,否則用戶就不得不重新發(fā)送文件并再次比對校驗和。校驗和對于編寫備份腳本或系統(tǒng)維護腳本來說非常重要,因為它們都會涉及通過網絡傳輸文件。通過使用校驗和核實,我們就可以識別出那些在網絡傳輸過程中出現(xiàn)損壞的文件,并重發(fā)這些文件,從而確保數(shù)據(jù)的完整性。
圖書封面
圖書標簽Tags
無
評論、評分、閱讀與下載