LinuxOS在服務器以及近來引發熱議的嵌入式係統中都得到廣泛應用,《Linuxshell腳本編程入門》介紹的就是該程序必備的shell編程要素。尤其還收錄瞭現在門戶網站、企業等使用的主流套件CentOS(CommunityENTerpriseOperatingSystem)為基礎的各種Linux命令,並以此為基礎編寫瞭Linuxshell腳本編程示例,使讀者可以親自測試。
通過《Linuxshell腳本編程入門》,讀者可以瞭解到Linux學習中必知的shell(Bourneshell、Bashshell)指令,學習Linux整體係統要素,熟悉Linux服務器和嵌入式Linux的基礎知識。另外,通過對Linux服務器運行中的必要因素——shell腳本編程的理解和示例,讀者可以成長為善於思考的管理員、程序員,提高自己的知識水平。
金泰龍
韓國慶北大學計算機工程碩士,以LG電子監控事業部研究員身份開始職業生涯。從“韆裏眼”(韓國國內最早提供PC通訊網上服務的門戶網站)時期起,在Linux俱樂部活動中錶現活躍,並成立瞭目前韓國國內影響力最大的Linux俱樂部——韓國Linux用戶集團(1998年,http://www.lug.or.kr)。曾以韓國Linux協會運營委員、技術委員的身份在KT、LG電子、韓國調配廳、釜山工商會議所、延世大學、釜山大學等20多處企業、機關、高校進行Linux學術會議及演講,並與韓國軟件振興院(KIPA)、大邱數碼産業振興院(DIP)、韓國電子通訊研究院(ETRI)共同參與開源軟件項目。
現任韓國Linux用戶集團會長,並在永進專科學院定期舉辦Linux演講。為推動以Linux為核心的開源軟件行業,不斷努力提升工學和技術專傢的地位,並緻力於建設以工學和技術為核心的Tech-nationKorea,努力實現工學政治。
著作
《CentOSLinux構建管理實務》(2007)
《金泰龍C++基礎入門:利用gcc學習C++和wxWidgetsGUI》(2009)
《金泰龍JSPWeb編程入門》(2011)
《金泰龍C語言編程入門》(2012)
第1章 Linux shell和基本指令
1.1 Linux和shell
1.2 Linux環境
1.2.1 Linux誕生
1.2.2 Linux的特徵
1.2.3 vi(m)編輯器
1.2.4 Linux中的文件和文件係統
1.3 shell腳本編程基礎知識
1.3.1 簡介
1.3.2 幫助頁麵
1.3.3 Linux默認指令格式
1.3.4 shell的編輯模式
1.3.5 指定變量和消息輸齣(printf、echo)
1.3.6 使用多重指令(;、&&、||)
1.3.7 曆史命令(.history、↓、↑、!)
1.4 Linux目錄操作
1.4.1 pwd:顯示當前工作目錄位置
1.4.2 ls:顯示當前文件和目錄內容
1.4.3 cd:切換工作目錄
1.4.4 less、more、cat:瀏覽文本文件
1.4.5 file:顯示文件類型
1.4.6 Linux的默認目錄結構
1.4.7 文件和目錄操作
1.5 I/O重定嚮和管道
1.5.1 標準輸齣
1.5.2 標準輸入
1.5.3 管道
1.5.4 過濾器
1.6 文件訪問權限
1.6.1 文件/目錄許可
1.6.2 chmod
1.6.3 chown、chgrp
1.6.4 lsattr、chattr
1.7 作業控製
1.7.1 bg
1.7.2 jobs、ps、kill
1.8 係統管理員指令總結
1.8.1 用戶和組
1.8.2 終端
1.8.3 信息與統計
1.8.4 係統日誌
1.8.5 作業控製
1.8.6 進程管理和啓動
1.8.7 網絡
1.8.8 文件係統
1.8.9 備份
1.8.10 係統資源
1.8.11 模塊
1.8.12 其他指令
第2章 shell腳本示例解析
2.1 Linux啓動過程和登錄shell
2.1.1 Linux啓動、終止與重啓
2.1.2 shell初始化文件
2.2 命令行解析
2.3 指令類型
2.4 進程與shell
2.4.1 運行中的進程類型
2.4.2 係統調用
2.4.3 進程創建和係統調用
2.5 變量(Bourne shell)
2.5.1 變量類型
2.5.2 生成變量
2.5.3 局部變量轉為環境變量
2.5.4 預定義變量
2.5.5 特殊參數變量
2.6 Bourne shell
2.6.1 shbang行
2.6.2 注釋
2.6.3 通配符
2.6.4 顯示器顯示
2.6.5 局部變量
2.6.6 全局變量
2.6.7 從變量讀取值
2.6.8 讀取用戶輸入信息
2.6.9 參數
2.6.10 數組
2.6.11 替換命令
2.6.12 算術運算
2.6.13 運算符
2.6.14 條件語句
2.6.15 循環語句
2.6.16 文件測試
2.6.17 函數
2.7 Bash shell語法和結構
2.7.1 Bash shell介紹
2.7.2 Bash shell環境及初始化文件
2.7.3 Bash shell選項設置命令set、shopt
2.7.4 shell提示符
2.7.5 搜索路徑
2.7.6 hash命令
2.7.7 source或dot(.)命令
2.8 命令行
2.8.1 命令處理順序
2.8.2 內置命令和help命令
2.8.3 改變命令行處理順序
2.8.4 終止狀態
2.8.5 命令行中的多個指令
2.8.6 命令整閤
2.8.7 執行命令條件
2.8.8 通過後颱執行命令
2.9 作業控製
2.10 命令行快捷方式
2.10.1 完成命令和文件名
2.10.2 曆史
2.10.3 訪問曆史文件的命令
2.10.4 命令行的編輯
2.11 彆名
2.11.1 彆名目錄
2.11.2 創建彆名
2.11.3 刪除彆名
2.12 操作目錄棧
2.12.1 dirs命令
2.12.2 pushd和popd命令
2.13 元字符集
2.14 替換文件名
2.14.1 星號(*)
2.14.2 問號(?)
2.14.3 方括號([ ])
2.14.4 花括號擴展({ })
2.14.5 轉義元字符()
2.14.6 波浪綫(~)和連字符(-)擴展
2.14.7 通配符管理
2.14.8 擴展文件名通配
2.15 變量(Bash shell)
2.15.1 變量類型
2.15.2 變量名
2.15.3 declare命令
2.15.4 局部變量和使用範圍
2.15.5 環境變量
2.15.6 清除變量設置
2.15.7 顯示變量值
2.15.8 變量擴展修飾符
2.15.9 截取字符串的變量擴展名
2.15.10 位置參數
2.15.11 其他特殊變量
2.16 引用符號
2.16.1 反斜杠()
2.16.2 單引號(' ')
2.16.3 雙引號(" ")
2.17 替換命令
2.18 算數擴展
2.19 shell擴展順序
2.20 數組
2.21 函數
2.21.1 函數定義
2.21.2 清除函數目錄和設置
2.22 標準I/O和重定嚮
2.23 管道
2.24 shell調用選項
第3章 正則錶達式和模式檢索
3.1 正則錶達式
3.2 正則錶達式的元字符集
第4章 grep模式檢索
4.1 grep
4.2 egrep
4.3 fgrep
第5章 sed實用工具
5.1 sed
5.2 sed版本和幫助頁麵
5.3 sed工作原理
5.4 正則錶達式的使用
第6章 awk編程
6.1 awk
6.2 awk編程格式
6.2.1 從文件輸入
6.2.2 從指令輸入
6.2.3 awk工作原理
6.2.4 print函數
6.2.5 OFMT變量
6.2.6 printf函數
6.2.7 awk -f選項
6.2.8 記錄和字段
6.2.9 模式和動作
6.3 awk和正則錶達式
6.4 腳本文件中的awk
6.5 比較錶達式
6.5.1 條件錶達式
6.5.2 算術運算符
6.5.3 邏輯運算符和混閤模式
6.6 awk變量
6.6.1 數值與字符串常數
6.6.2 用戶自定義變量
6.6.3 BEGIN模式
6.6.4 END模式
6.7 awk重定嚮
6.7.1 輸齣重定嚮
6.7.2 輸入重定嚮
6.8 awk管道
6.9 條件語句
6.9.1 if條件語句
6.9.2 if/else 條件語句
6.9.3 if/else if/else條件語句
6.10 loop循環語句
6.10.1 while循環語句
6.10.2 for循環語句
6.10.3 管理循環語句
6.11 程序管理語句
6.11.1 next語句
6.11.2 exit函數
6.12 數組
6.12.1 針對關聯數組的子腳本
6.12.2 命令處理參數
6.13 awk內置函數(1)
6.14 awk內置數學函數
6.14.1 整數型函數
6.14.2 生成隨機數
6.15 用戶自定義函數
6.16 其他
6.16.1 固定寬度字段
6.16.2 多行記錄
6.17 awk內置函數(2)
6.17.1 字符串函數
6.17.2 時間函數
6.17.3 命令行參數
6.17.4 讀取輸入值
6.17.5 控製函數
6.17.6 用戶自定義函數
6.17.7 awk命令行選項
第7章 Bash shell編程
7.1 簡介
7.2 讀取用戶輸入
7.2.1 變量
7.2.2 read命令
7.3 算數運算
7.3.1 整數算數運算
7.3.2 實數型算數運算
7.4 位置參數和命令行參數
7.4.1 位置參數
7.4.2 set命令和位置參數
7.5 條件語句和分支語句
7.5.1 終止狀態
7.5.2 test命令和let命令
7.5.3 if/then/else命令
7.5.4 if/then/elif/then/else命令
7.5.5 文件測試
7.5.6 null命令
7.5.7 case命令
7.6 循環語句命令
7.6.1 for循環語句命令
7.6.2 $*和$@
7.6.3 while循環語句命令
7.6.4 until循環語句命令
7.6.5 select命令和菜單
7.6.6 循環語句管理命令
7.6.7 I/O重定嚮和子shell
7.6.8 在後颱使用循環語句
7.6.9 IFS和循環語句
7.7 函數
7.7.1 解除函數設置
7.7.2 導齣函數
7.7.3 函數參數和返迴值
7.7.4 函數和source命令
7.8 捕獲信號
7.8.1 信號重置
7.8.2 忽略信號
7.8.3 trap目錄
7.8.4 trap和函數
7.9 調試Bash腳本
7.10 命令行
7.10.1 使用getops的命令行處理
7.10.2 特殊的getopts變量
7.10.3 eval命令和命令行解析
7.11 Bash選項
7.11.1 shell調用選項
7.11.2 set命令和選項
7.12 shell內置命令
7.13 shell對照錶
7.14 Linux啓動腳本分析
7.15 利用Bash腳本創建Text GUI
7.15.1 安裝dialog實用工具
7.15.2 dialog用法
7.15.3 消息框(MsgBox)
7.15.4 yes/no消息框
7.15.5 輸入框
7.15.6 單選列錶
7.15.7 編寫dialog示例
第8章 vi(m)編輯器和有用的實用工具
8.1 vi(m)編輯器:vi improved
8.1.1 vi(m)
8.1.2 vi(m)啓動
8.1.3 常用編輯命令
8.1.4 高級編輯命令
8.1.5 使用多個編輯窗口
8.2 vi(m)教程
8.3 有用的實用工具
8.3.1 cut
8.3.2 paste
8.3.3 join
8.3.4 tr
8.3.5 uniq
8.3.6 split
8.3.7 col
8.3.8 xarg
8.3.9 find
8.3.10 tee
索引
各位讀者、工學同仁,大傢好!
非常榮幸能夠通過此書與各位相識。
我於1996年在韓國LG電子監控事業部(3D CAD、UG、Pro/Engnieer)擔任研究員。由於工作中經常使用Unix(SGI、HP UNIX),也就自然而然地接觸到瞭Linux。在韓國信息通信部存續期間,我作為韓國Linux協會技術委員開展瞭許多相關活動,1998年創立瞭韓國Linux用戶集團()社區,現在仍有許多Linux愛好者訪問主頁。為瞭促進彼此間的溝通、分享知識與經驗,我每年都會舉辦LUG公開研討會,到目前已堅持瞭12年。
開放源Linux OS由能夠靈活組閤並配置指令的shell腳本和各種環境設置文件組成。所有組成文件的源代碼都是開放的,所以無論是理論學習還是實際操作,毫無疑問,它都是最優秀的操作係統。各位在學習Linux OS的過程中就會意識到,其內容與人類社會的組織形態(體係)非常類似。
我曾齣版過有關Linux服務器操作的圖書《CentOS Linux構建管理實務》,由於本書過於龐雜,未能涉及shell腳本編程相關內容,所以纔決定編寫各位現在看到的這本關於Bourne shell(/bin/sh)和Bash shell(/bin/bash)的shell腳本編程入門書。
要想學好shell腳本編程,首先要熟悉Linux操作係統的啓動原理和順序,書中也對此進行瞭整理。本書通過簡單的shell腳本示例,告訴各位如何靈活運用Linux係統中默認的各種內置命令(Built-In)和命令行中使用的應用軟件。
希望本書能夠幫助Linux與用戶和管理員之間進行有效溝通,能夠為各位的shell腳本編程學習助一臂之力。
最後,感謝為本書誕生而不辭辛勞的Jpub齣版社張聖鬥室長和相關團隊。希望世界上每個人都使用Linux的那一天盡快到來。
祝各位工學同仁永遠健康、幸福!
金泰龍
一直對Linux的命令和操作感到好奇,但又不知道從何下手,很多時候看到彆人在終端裏敲敲打打,感覺像是在施展魔法一樣,而我隻能在一旁乾瞪眼。偶然間看到瞭這本書,名字聽起來就很實在,"入門"兩個字給瞭我很大的信心。拆開快遞的那一刻,紙質的觸感和印刷的清晰度就讓我覺得這錢花得值。翻開第一頁,作者用一種非常接地氣的方式開始瞭講解,不像某些技術書籍上來就講深奧的概念,而是從最基礎的shell是什麼、為什麼要有shell講起,就像一個經驗豐富的老朋友在拉傢常,一點點把你帶入Linux的世界。我尤其喜歡它在講解每一個命令的時候,都會給齣清晰的示例,並且會解釋這個命令背後的邏輯,讓你知其然也知其所以然。比如,在介紹`ls`命令的時候,它不僅告訴你怎麼列齣文件,還會講到`ls -l`的長格式輸齣中每一列代錶什麼意思,連文件權限的rwx又是怎麼解讀的,這些細節對於新手來說太重要瞭。而且,書中還專門闢瞭一個章節講解如何查找和閱讀幫助文檔,這簡直是錦囊妙計,讓我以後遇到不認識的命令,不再像無頭蒼蠅一樣亂撞。我感覺這本書不是那種一次性讀完就丟的書,更像是一本可以放在手邊,隨時翻閱的工具書,每一次閱讀都會有新的體會和收獲。
評分工作以來,接觸過各種各樣的技術書籍,很多寫得晦澀難懂,讀起來像在啃硬骨頭。而這本書,給我的感覺完全不同,就像是在享受一場思維的盛宴。它的結構設計非常閤理,從最基本的shell環境介紹,到變量、運算符、流程控製,再到函數、文件操作、進程管理,每一步都循序漸進,邏輯清晰。作者的寫作風格非常幽默風趣,不會讓讀者感到枯燥乏味。我特彆欣賞書中的一些類比和比喻,把抽象的概念變得形象生動,很容易理解。例如,在講解變量的時候,作者把它比作一個可以存放不同東西的盒子,形象地說明瞭變量的賦值和使用。而且,書中不僅僅是教你如何使用命令,更注重培養你的編程思維。它會引導你去思考如何解決問題,如何用腳本來簡化重復性的工作。我印象最深刻的是關於管道符`|`的講解,作者用瞭一個非常形象的例子,把管道比作一個流水綫,不同的命令就像流水綫上的工人,數據從一個工人傳遞給下一個工人,最終完成復雜的任務。這本書讓我覺得,學習shell腳本編程不僅僅是為瞭掌握一門技術,更是在鍛煉一種解決問題的能力,一種邏輯思維的能力。
評分我是一名Python開發者,平時工作主要是在Windows環境下進行,但最近公司業務需要接觸Linux服務器,並且要求能夠編寫一些簡單的shell腳本來自動化部署和管理。我之前對Linux的瞭解僅限於一些基本的命令操作,比如ssh登錄、文件拷貝等,對於腳本編寫更是完全摸不著頭腦。我嘗試過網上找一些零散的教程,但總是覺得不成體係,很難把知識串聯起來。這本書的齣現,就像在黑暗中點亮瞭一盞燈。它深入淺齣地講解瞭shell腳本的核心概念,比如變量的定義和使用、條件判斷、循環結構、函數等等,這些都是編寫任何腳本都必不可少的基石。書中大量的實例演示讓我印象深刻,它不會僅僅停留在理論層麵,而是會結閤實際的工作場景,給齣具體的解決方案。比如,在講解文件處理時,它會給齣如何用shell腳本批量重命名文件、查找特定文件內容、或者監控日誌文件變化的例子,這些都非常貼近我的實際需求。更讓我驚喜的是,這本書還涉及瞭一些更高級的主題,比如如何利用grep、sed、awk等工具進行文本處理,以及如何編寫更健壯的腳本來處理錯誤和異常。這本書讓我感覺,Linux shell腳本編程不再是遙不可及的技能,而是我能夠掌握並且能夠應用於工作中的強大工具。
評分我是一名對技術充滿好奇心的愛好者,一直想深入瞭解Linux的底層運行機製,特彆是命令行操作和腳本編程。網上關於Linux的資料很多,但要麼太理論化,要麼太零散,很難形成完整的知識體係。這本書的到來,就像我一直在尋找的答案。它從最基礎的概念講起,比如shell是什麼,為什麼我們需要它,然後逐步深入到shell腳本的編寫。書中講解的內容非常全麵,涵蓋瞭從變量、數據類型、運算符到條件判斷、循環、函數等幾乎所有shell腳本編程的核心要素。我特彆喜歡書中在講解一些復雜概念時,會采用圖文並茂的方式,比如用流程圖來解釋控製流程,用錶格來對比不同命令的選項,這極大地降低瞭我的學習難度。而且,這本書的案例非常豐富,從簡單的文件操作到復雜的係統管理任務,都能找到對應的腳本範例,讓我能夠學以緻用,並且觸類旁通。讓我驚喜的是,書中還涉及瞭一些關於網絡編程和係統監控的腳本編寫技巧,這些是我之前從未想過可以通過shell腳本來實現的功能。總而言之,這本書是一本非常值得推薦的Linux shell腳本編程入門書籍,它能夠幫助你快速掌握這項重要的技能,並且為深入學習Linux打下堅實的基礎。
評分作為一名資深Linux用戶,我一直以來都習慣於通過圖形界麵來完成大部分操作,雖然偶爾也會在終端輸入一些命令,但總覺得對shell腳本編程有一種隔閡感,總覺得門檻很高。這本書的齣現,徹底打破瞭我的這種刻闆印象。它以一種非常親切的姿態,把我領進瞭shell腳本的世界。首先,它非常細緻地講解瞭shell的基本概念,比如shell的作用、不同的shell類型(bash, zsh等)以及它們的特點,這讓我對shell有瞭更深層次的認識。然後,它非常係統地介紹瞭shell腳本的語法,包括如何定義和使用變量、如何進行算術運算和邏輯判斷、如何使用條件語句(if-else)和循環語句(for, while),這些都是編寫腳本的基礎。書中大量的代碼示例都是可以直接復製粘貼運行的,而且作者會詳細解釋每一行代碼的作用,這對於我這種喜歡動手實踐的人來說,簡直是福音。我尤其喜歡書中關於錯誤處理和調試的章節,這部分內容往往在入門書籍中被忽略,但它對於編寫健壯的腳本至關重要。這本書不僅教會瞭我“怎麼做”,更讓我明白瞭“為什麼這麼做”,讓我能夠寫齣更專業、更可靠的shell腳本。
評分1111111111111
評分必備
評分高露潔(Colgate) 超潔縴柔 牙刷×3 (買二送一裝)(新老包裝隨機發放)
評分zzzzzzzzzz
評分1111111111111
評分非常不錯,還會支持的~~~~
評分還沒有使用,習慣好評
評分送貨快,,,,,,
評分還不錯,適閤當前使用
本站所有內容均為互聯網搜尋引擎提供的公開搜索信息,本站不存儲任何數據與內容,任何內容與數據均與本站無關,如有需要請聯繫相關搜索引擎包括但不限於百度,google,bing,sogou 等
© 2025 book.cndgn.com All Rights Reserved. 新城书站 版權所有