本書是一本較完整的、偏重實戰(zhàn)的Linux命令圖書,但并非大而全,很多命令講解均取之于企業(yè)中解決問題的實戰(zhàn)案例,并結(jié)合老男孩十幾年的運維工作和教學工作進行了梳理。全書從脈絡上共分為12章,具體分布如下。第壹章為Linux命令行簡介,第2章講解的是文件和目錄操作命令,第3章講解的是文件過濾及內(nèi)容編輯處理命令,第4章講解的是文本處理三劍客,即grep、sed、awk。第5-6章講解的是Linux信息顯示與搜索文件、文件備份與壓縮等命令。第7-8章講解的是Linux用戶管理及用戶信息查詢、磁盤與文件系統(tǒng)管理等命令。第9-11章講解的是Linux進程管理、網(wǎng)絡管理、系統(tǒng)管理等命令。第12章講解的是Linux系統(tǒng)常用的Bash內(nèi)置命令。
前言為什么要寫這本書《跟老男孩學Linux運維:Web集群實戰(zhàn)》及《跟老男孩學Linux運維:Shell編程實戰(zhàn)》這兩本書自出版以來,得到了廣大網(wǎng)友的一致好評和贊揚。同時也有部分讀者提出了很多寶貴的建議,其中之一就是這兩本書都不是面向純零基礎(chǔ)讀者的書,需要具備一些基礎(chǔ)的Linux知識輔助才能更好地進行學習。
在收到讀者和網(wǎng)友的反饋之后,老男孩并不感到意外,因為上述兩本書的定位的確是有一些Linux基礎(chǔ)的讀者,編寫零基礎(chǔ)入門的圖書也在老男孩的規(guī)劃之中,本書就是其中之一,還有另一本圖書暫定名為《跟老男孩學Linux運維:核心入門基礎(chǔ)》,仍在寫作之中。
眾所周知,Linux是一個重點使用命令行來完成相關(guān)工作的操作系統(tǒng),因此,對Linux命令的熟練使用是工程師玩轉(zhuǎn)Linux的基礎(chǔ)且關(guān)鍵的技能之一。
在長期的運維工作以及深度教學中,老男孩發(fā)現(xiàn)很多Linux入門人員對Linux基礎(chǔ)命令一知半解,甚至是已經(jīng)工作的部分企業(yè)運維人員也不能熟練運用Linux命令。而市面上關(guān)于Linux命令的圖書大多如出一轍,或翻譯幫助文檔,或理論多例子太淺且落后,或結(jié)合Shell編程附帶一些基礎(chǔ)Linux命令介紹,都沒有將命令結(jié)合到解決企業(yè)實戰(zhàn)的問題中來。因此老男孩決定寫一本與眾不同的、比較偏重實戰(zhàn)案例的Linux命令圖書,相信本書一定會讓眾多讀者受益,會幫助大家提升個人Linux運維能力,達到加薪升職的目的。
本書是“跟老男孩學Linux運維”實戰(zhàn)系列叢書的第三本,《跟老男孩學Linux運維:三劍客命令深度實戰(zhàn)》《跟老男孩學Linux運維:MySQL實戰(zhàn)》也將在幾個月后和大家見面,更多Linux運維實戰(zhàn)系列圖書正在持續(xù)寫作之中,敬請期待。
讀者對象Linux入門人員Linux系統(tǒng)管理員和運維工程師互聯(lián)網(wǎng)網(wǎng)站開發(fā)及數(shù)據(jù)庫管理人員網(wǎng)絡管理員和項目實施工程師Linux相關(guān)售前售后技術(shù)工程師開設Linux相關(guān)課程的大中專院校對Linux感興趣的人群如何閱讀本書本書是一本偏重實戰(zhàn)的較完整的Linux命令圖書,本身并非大而全,但處處可以體現(xiàn)“實戰(zhàn)”二字,很多命令講解均取自企業(yè)中解決問題的實戰(zhàn)案例,并結(jié)合老男孩十幾年的運維工作和教學工作進行了梳理。全書從脈絡上共分為12章,具體分布如下。
第1章為Linux命令行簡介,介紹Linux下的命令行基礎(chǔ)知識、快捷鍵、查找?guī)椭㈤_關(guān)機命令等內(nèi)容。
第2章講解的是文件和目錄操作命令,介紹了對于文件和目錄的增刪改查等功能的綜合運用,同時,整理了一些富有特色的利用命令解決工作中問題的小案例。
第3章講解的是文件過濾及內(nèi)容編輯處理命令,主要是對于文件的編輯、過濾等命令的介紹。
第4章講解的是文本處理“三劍客”,即grep、sed、awk,這是Linux中最核心的3個命令,但這部分內(nèi)容實在太多,因此,后續(xù)將會對更深入的內(nèi)容單獨成書進行介紹。
第5~6章講解的是Linux信息顯示與搜索文件、文件備份與壓縮等命令,這是最后兩章不會直接危害系統(tǒng)和服務的命令。
第7~8章講解的是Linux用戶管理及用戶信息查詢、磁盤與文件系統(tǒng)管理等命令,這兩章的命令雖然基礎(chǔ)但是極其重要,因為稍有不慎就會給企業(yè)的數(shù)據(jù)安全以及系統(tǒng)正常運行帶來災難,因此,讀者在學習及工作中使用這些命令時一定要格外注意。
第9~11章講解的是Linux進程管理、網(wǎng)絡管理、系統(tǒng)管理等命令,是Linux命令中更重要更核心的命令,能否對這些命令進行熟練的運用,決定了我們是否能夠真正掌握并自如運用Linux系統(tǒng)。
第12章講解的是Linux系統(tǒng)常用的Bash內(nèi)置命令,這部分命令比較特殊,在系統(tǒng)中沒有對應的實體命令文件,而是存在于Bash程序之中,因此稱為內(nèi)置命令。需要注意的是,內(nèi)置命令的查看幫助方式與其他章節(jié)的命令也是不同的。
勘誤和支持由于老男孩的教學任務很重,課程較多,全書的寫作基本上都是利用早晨和夜里的時間來完成的,限于本人的水平和能力,加之編寫時間倉促,書中難免有疏漏和不當之處,懇請讀者批評指正。你可以將書中的錯誤發(fā)布在專門為本書準備的博客地址評論處“http://oldboy.blog.51cto.com/2561410/1964279”,同時不管你遇到何種問題,都可以加入我為本書提供的QQ交流群204041129(加群說明:Linux命令),我將盡力為讀者提供最滿意的解答。書中所需的工具等都將發(fā)布在我的博客網(wǎng)站上,我也會將相應功能的更新及時發(fā)布出來。如果你有更多的寶貴意見,也歡迎你發(fā)送郵件至我的郵箱oldboy@oldboyedu.com或者加老男孩的QQ號31333741,我很期待能夠聽到你們的真摯反饋。
致謝本書是老男孩本人和老男孩教育的同事張耀共同完成的,特別感謝張耀對本書的寫作支持。
感謝李泳誼為本書第4章貢獻awk知識的底稿內(nèi)容及對本書的寫作給予的支持。
感謝老男孩IT教育的每一位在校學員—是你們自覺努力的學習,使得我有較多的時間持續(xù)寫作。感謝你們對老男孩IT教育的支持。
感謝老男孩IT教育里每一個班級的助教、班主任、班長及班干部,感謝你們替我分擔老男孩IT教育眾多學員的答疑、輔導、批改作業(yè)及班級管理工作。
感謝我的同
老男孩介紹:
專注于Linux運維架構(gòu)領(lǐng)域一線運維及管理工作13年以上,擅長大規(guī)模互聯(lián)網(wǎng)網(wǎng)站集群架構(gòu)技術(shù)細節(jié),曾服務于全國大的基礎(chǔ)遠程教育公司及全球大的中文百科網(wǎng)站,曾為某門戶網(wǎng)站的早期及某大型培訓機構(gòu)早期提供過顧問服務,老男孩老師對于運維技術(shù)有著非同常人的獨特理解,經(jīng)過近10多年工作和教學,形成了比較完善的個人創(chuàng)新的運維思想、思維體系,長期擔當多家互聯(lián)網(wǎng)企業(yè)技術(shù)顧問及企業(yè)培訓特聘講師。曾3度創(chuàng)業(yè),后于2007年開辦國內(nèi)Linux運維實戰(zhàn)培訓私塾式精英教育培訓機構(gòu)及項目實施服務公司【老男孩Linux高薪實戰(zhàn)教育】。截止到2014年8月,累計受益學生達到數(shù)萬人,至今仍工作在一線,運維及教育。。
博客: http://oldboy.blog.51cto.com/
網(wǎng)站: http://www.etiantian.org
目錄
前言
第1章 Linux命令行簡介 / 1
1.1Linux命令行概述 / 1
1.2在Linux命令行下查看命令幫助 / 4
1.3Linux關(guān)機、重啟、注銷命令 / 9
1.4老男孩的運維思想 / 12
第2章 文件和目錄操作命令 / 13
2.1pwd:顯示當前所在的位置 / 13
2.2cd:切換目錄 / 16
2.3tree:以樹形結(jié)構(gòu)顯示目錄下的內(nèi)容 / 18
2.4mkdir:創(chuàng)建目錄 / 22
2.5touch:創(chuàng)建空文件或改變文件的時間戳屬性 / 27
2.6ls:顯示目錄下的內(nèi)容及相關(guān)屬性信息 / 30
2.7cp:復制文件或目錄 / 39
2.8mv:移動或重命名文件 / 42
2.9rm:刪除文件或目錄 / 45
2.10rmdir:刪除空目錄 / 48
2.11ln:硬鏈接與軟鏈接 / 49
2.12readlink:查看符號鏈接文件的內(nèi)容 / 54
2.13find:查找目錄下的文件 / 55
2.14xargs:將標準輸入轉(zhuǎn)換成命令行參數(shù) / 68
2.15rename:重命名文件 / 71
2.16basename:顯示文件名或目錄名 / 72
2.17dirname:顯示文件或目錄路徑 / 72
2.18chattr:改變文件的擴展屬性 / 73
2.19lsattr:查看文件擴展屬性 / 75
2.20file:顯示文件的類型 / 76
2.21md5sum:計算和校驗文件的MD5值 / 77
2.22chown:改變文件或目錄的用戶和用戶組 / 80
2.23chmod:改變文件或目錄權(quán)限 / 81
2.24chgrp:更改文件用戶組 / 85
2.25umask:顯示或設置權(quán)限掩碼 / 86
2.26老男孩從新手成為技術(shù)大牛的心法 / 90
第3章 文件過濾及內(nèi)容編輯處理命令 / 91
3.1cat:合并文件或查看文件內(nèi)容 / 91
3.2tac:反向顯示文件內(nèi)容 / 103
3.3more:分頁顯示文件內(nèi)容 / 104
3.4less:分頁顯示文件內(nèi)容 / 107
3.5head:顯示文件內(nèi)容頭部 / 109
3.6tail:顯示文件內(nèi)容尾部 / 111
3.7tailf:跟蹤日志文件 / 114
3.8cut:從文本中提取一段文字并輸出 / 115
3.9split:分割文件 / 117
3.10paste:合并文件 / 118
3.11sort:文本排序 / 123
3.12join:按兩個文件的相同字段合并 / 127
3.13uniq:去除重復行 / 129
3.14wc:統(tǒng)計文件的行數(shù)、單詞數(shù)或字節(jié)數(shù) / 131
3.15iconv:轉(zhuǎn)換文件的編碼格式 / 133
3.16dos2unix:將DOS格式文件轉(zhuǎn)換成UNIX格式 / 134
3.17diff:比較兩個文件的不同 / 135
3.18vimdiff:可視化比較工具 / 138
3.19rev:反向輸出文件內(nèi)容 / 139
3.20tr:替換或刪除字符 / 140
3.21od:按不同進制顯示文件 / 143
3.22tee:多重定向 / 145
3.23vi/vim:純文本編輯器 / 147
3.24老男孩逆襲思想:做Linux運維的多個好處 / 152
第4章 文本處理三劍客 / 153
4.1grep:文本過濾工具 / 153
4.2sed:字符流編輯器 / 159
4.3awk基礎(chǔ)入門 / 165
第5章 Linux信息顯示與搜索文件命令 / 176
5.1uname:顯示系統(tǒng)信息 / 176
5.2hostname:顯示或設置系統(tǒng)的主機名 / 178
5.3dmesg:系統(tǒng)啟動異常診斷 / 179
5.4stat:顯示文件或文件系統(tǒng)狀態(tài) / 181
5.5du:統(tǒng)計磁盤空間使用情況 / 183
5.6date:顯示與設置系統(tǒng)時間 / 186
5.7echo:顯示一行文本 / 190
5.8watch:監(jiān)視命令執(zhí)行情況 / 193
5.9which:顯示命令的全路徑 / 195
5.10whereis:顯示命令及其相關(guān)文件全路徑 / 196
5.11locate:快速定位文件路徑 / 197
5.12updatedb:更新mlocate數(shù)據(jù)庫 / 199
5.13老男孩逆襲思想:新手在工作中如何問問題不會被鄙視 / 200
第6章 文件備份與壓縮命令 / 201
6.1tar:打包備份 / 201
6.2gzip:壓縮或解壓文件 / 208
6.3zip:打包和壓縮文件 / 211
6.4unzip:解壓zip文件 / 212
6.5scp:遠程文件復制 / 214
6.6rsync:文件同步工具 / 216
6.7老男孩逆襲思想:新手如何高效地提問 / 220
第7章 Linux用戶管理及用戶信息查詢命令 / 222
7.1 useradd:創(chuàng)建用戶 / 222
7.2usermod:修改用戶信息 / 227
7.3userdel:刪除用戶 / 229
7.4groupadd:創(chuàng)建新的用戶組 / 230
7.5groupdel:刪除用戶組 / 231
7.6passwd:修改用戶密碼 / 232
7.7chage:修改用戶密碼有效期 / 237
7.8chpasswd:批量更新用戶密碼 / 238
7.9su:切換用戶 / 240
7.10visudo:編輯sudoers文件 / 242
7.11sudo:以另一個用戶身份執(zhí)行命令 / 244
7.12id:顯示用戶與用戶組的信息 / 248
7.13w:顯示已登錄用戶信息 / 249
7.14who:顯示已登錄用戶信息 / 250
7.15users:顯示已登錄用戶 / 252
7.16whoami:顯示當前登錄的用戶名 / 253
7.17last:顯示用戶登錄列表 / 253
7.18lastb:顯示用戶登錄失敗的記錄 / 254
7.19lastlog:顯示所有用戶的最近登錄記錄 / 255
第8章 Linux磁盤與文件系統(tǒng)管理命令 / 257
8.1fdisk:磁盤分區(qū)工具 / 257
8.2partprobe:更新內(nèi)核的硬盤分區(qū)表信息 / 265
8.3tune2fs:調(diào)整ext2/ext3/ext4文件系統(tǒng)參數(shù) / 266
8.4parted:磁盤分區(qū)工具 / 268
8.5mkfs:創(chuàng)建Linux文件系統(tǒng) / 272
8.6dumpe2fs:導出ext2/ext3/ext4文件系統(tǒng)信息 / 274
8.7resize2fs:調(diào)整ext2/ext3