高级Bash脚本编程指南 在线收藏版
生活随笔
收集整理的這篇文章主要介紹了
高级Bash脚本编程指南 在线收藏版
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
這本書假定你沒有任何關(guān)于腳本或一般程序的編程知識(shí), 但是如果你具備相關(guān)的知識(shí), 那么你將很容易就能夠達(dá)到中高級(jí)的水平. . . 所有這些只是UNIX?浩瀚知識(shí)的一小部分. 你可以把本書作為教材, 自學(xué)手冊, 或者是關(guān)于shell腳本技術(shù)的文檔. 書中的練習(xí)和樣例腳本中的注釋將會(huì)與讀者進(jìn)行更好的互動(dòng), 但是最關(guān)鍵的前提是:?想真正學(xué)習(xí)腳本編程的唯一途徑就是親自動(dòng)手編寫腳本.這本書也可作為教材來講解一般的編程概念.1.?原書作者致中國讀者(英文)2.?原書作者致中國讀者(譯文)3.?黃毅4.?楊春敏 第一部分.?熱身1.?為什么使用shell編程?2.?帶著一個(gè)Sha-Bang出發(fā)(Sha-Bang指的是#!)2.1.?調(diào)用一個(gè)腳本2.2.?初步的練習(xí) 第二部分.?基本3.?特殊字符4.?變量和參數(shù)的介紹4.1.?變量替換4.2.?變量賦值4.3.?Bash變量是不區(qū)分類型的4.4.?特殊的變量類型 5.?引用5.1.?引用變量5.2.?轉(zhuǎn)義 6.?退出和退出狀態(tài)碼7.?條件判斷7.1.?條件測試結(jié)構(gòu)7.2.?文件測試操作符7.3.?其他比較操作符7.4.?嵌套的if/then條件測試7.5.?檢測你對測試知識(shí)的掌握情況 8.?操作符與相關(guān)主題8.1.?操作符8.2.?數(shù)字常量 第三部分.?進(jìn)階9.?變量重游9.1.?內(nèi)部變量9.2.?操作字符串9.3.?參數(shù)替換9.4.?指定變量的類型: 使用declare或者typeset9.5.?變量的間接引用9.6.?$RANDOM: 產(chǎn)生隨機(jī)整數(shù)9.7.?雙圓括號(hào)結(jié)構(gòu) 10.?循環(huán)與分支10.1.?循環(huán)10.2.?嵌套循環(huán)10.3.?循環(huán)控制10.4.?測試與分支(case與select結(jié)構(gòu)) 11.?內(nèi)部命令與內(nèi)建命令11.1.?作業(yè)控制命令 12.?外部過濾器, 程序和命令12.1.?基本命令12.2.?復(fù)雜命令12.3.?時(shí)間/日期 命令12.4.?文本處理命令12.5.?文件與歸檔命令12.6.?通訊命令12.7.?終端控制命令12.8.?數(shù)學(xué)計(jì)算命令12.9.?混雜命令 13.?系統(tǒng)與管理命令13.1.?分析一個(gè)系統(tǒng)腳本 14.?命令替換15.?算術(shù)擴(kuò)展16.?I/O重定向16.1.?使用exec16.2.?代碼塊重定向16.3.?重定向的應(yīng)用 17.?Here Document17.1.?Here String 18.?休息片刻 第四部分.?高級(jí)主題19.?正則表達(dá)式19.1.?一份簡要的正則表達(dá)式介紹19.2.?通配(globbing) 20.?子shell21.?受限shell22.?進(jìn)程替換23.?函數(shù)23.1.?復(fù)雜函數(shù)和函數(shù)復(fù)雜性23.2.?局部變量23.3.?不使用局部變量的遞歸 24.?別名25.?列表結(jié)構(gòu)26.?數(shù)組27.?/dev和/proc27.1.?/dev27.2.?/proc 28.?Zero與Null29.?調(diào)試30.?選項(xiàng)31.?陷阱32.?腳本編程風(fēng)格32.1.?非官方的Shell腳本編寫風(fēng)格 33.?雜項(xiàng)33.1.?交互與非交互式的交互與非交互式的shell和腳本33.2.?Shell包裝33.3.?測試和比較: 一種可選的方法33.4.?遞歸33.5.?將腳本"彩色化"33.6.?優(yōu)化33.7.?各種小技巧33.8.?安全問題33.9.?可移植性問題33.10.?Windows下的shell腳本 34.?Bash, 版本2與版本334.1.?Bash, 版本234.2.?Bash, 版本3 35.?后記35.1.?作者后記35.2.?關(guān)于作者35.3.?譯者后記35.3.1.?楊春敏35.3.2.?黃毅 35.4.?在哪里可以獲得幫助35.5.?用來制作這本書的工具35.5.1.?硬件35.5.2.?軟件與排版軟件 35.6.?致謝35.7.?譯者致謝······························································································································································································································································································································ 參考文獻(xiàn)A.?捐獻(xiàn)的腳本B.?參考卡片C.?一個(gè)學(xué)習(xí)Sed和Awk的小手冊C.1.?SedC.2.?Awk D.?帶有特殊含義的退出碼E.?I/O和I/O重定向的詳細(xì)介紹F.?命令行選項(xiàng)F.1.?標(biāo)準(zhǔn)命令行選項(xiàng)F.2.?Bash命令行選項(xiàng) G.?重要的文件H.?重要的系統(tǒng)目錄I.?本地化J.?歷史命令K.?一個(gè)簡單的.bashrc文件L.?將DOS批處理文件轉(zhuǎn)換為Shell腳本M.?練習(xí)M.1.?分析腳本M.2.?編寫腳本 N.?修訂記錄O.?翻譯版修訂記錄P.?鏡像站點(diǎn)Q.?To Do列表R.?版權(quán)表格清單11-1.?作業(yè)標(biāo)識(shí)符30-1.?Bash選項(xiàng)33-1.?轉(zhuǎn)義序列中顏色與數(shù)值的對應(yīng)B-1.?特殊的shell變量B-2.?測試操作: 二元比較B-3.?文件類型的測試操作B-4.?參數(shù)替換和擴(kuò)展B-5.?字符串操作B-6.?一些結(jié)構(gòu)的匯總C-1.?基本sed操作C-2.?sed操作符舉例D-1.?"保留的"退出碼L-1.?批處理文件關(guān)鍵字 / 變量 / 操作符, 和等價(jià)的shell符號(hào)L-2.?DOS命令與UNIX的等價(jià)命令N-1.?修訂歷史O-1.?翻譯版修訂歷史例子清單2-1.?清除: 清除/var/log下的log文件2-2.?清除:一個(gè)改良的清除腳本2-3.?清除: 一個(gè)增強(qiáng)的和廣義的刪除logfile的腳本3-1.?代碼塊和I/O重定向3-2.?將一個(gè)代碼塊的結(jié)果保存到文件3-3.?在后臺(tái)運(yùn)行一個(gè)循環(huán)3-4.?備份最后一天所有修改的文件4-1.?變量賦值和替換4-2.?簡單的變量賦值4-3.?簡單和復(fù)雜, 兩種類型的變量賦值4-4.?整型還是字符串?4-5.?位置參數(shù)4-6.?wh,?whois節(jié)點(diǎn)名字查詢4-7.?使用shift命令5-1.?echo出一些詭異變量5-2.?轉(zhuǎn)義符6-1.?退出/退出狀態(tài)碼6-2.?反轉(zhuǎn)一個(gè)條件的用法!7-1.?什么是真?7-2.?test,?/usr/bin/test,?[ ], 和/usr/bin/[都是等價(jià)命令7-3.?算術(shù)測試需要使用(( ))7-4.?測試那些斷掉的鏈接文件7-5.?算術(shù)比較與字符串比較7-6.?檢查字符串是否為null7-7.?zmore8-1.?最大公約數(shù)8-2.?使用算術(shù)操作符8-3.?使用&&和||進(jìn)行混合條件測試8-4.?數(shù)字常量表示法9-1.?$IFS與空白字符9-2.?定時(shí)輸入9-3.?再來一個(gè), 定時(shí)輸入9-4.?定時(shí)read9-5.?我是root么?9-6.?arglist: 通過$*和$@列出所有的參數(shù)9-7.?$*和$@的不一致的行為9-8.?當(dāng)$IFS為空時(shí)的$*和$@9-9.?下劃線變量9-10.?在一個(gè)文本文件的段落之間插入空行9-11.?轉(zhuǎn)換圖片文件格式, 同時(shí)更改文件名9-12.?將音頻流文件轉(zhuǎn)換為ogg各式的文件9-13.?模擬getopt9-14.?提取字符串的另一種方法9-15.?使用參數(shù)替換和錯(cuò)誤消息9-16.?參數(shù)替換和"usage"消息(譯者注: 通常就是幫助信息)9-17.?變量長度9-18.?參數(shù)替換中的模式匹配9-19.?修改文件擴(kuò)展名:9-20.?使用模式匹配來解析任意字符串9-21.?對字符串的前綴和后綴使用匹配模式9-22.?使用declare來指定變量的類型9-23.?間接引用9-24.?傳遞一個(gè)間接引用給awk9-25.?產(chǎn)生隨機(jī)整數(shù)9-26.?從一幅撲克牌中取出一張隨機(jī)的牌9-27.?兩個(gè)指定值之間的隨機(jī)數(shù)9-28.?用隨機(jī)數(shù)來搖單個(gè)骰子9-29.?重新分配隨機(jī)數(shù)種子9-30.?使用awk來產(chǎn)生偽隨機(jī)數(shù)9-31.?C語言風(fēng)格的變量操作10-1.?一個(gè)簡單的for循環(huán)10-2.?每個(gè)[list]元素中都帶有兩個(gè)參數(shù)的for循環(huán)10-3.?文件信息:?對包含在變量中的文件列表進(jìn)行操作10-4.?在for循環(huán)中操作文件10-5.?在for循環(huán)中省略in [list]部分10-6.?使用命令替換來產(chǎn)生for循環(huán)的[list]10-7.?對于二進(jìn)制文件的grep替換10-8.?列出系統(tǒng)上的所有用戶10-9.?在目錄的所有文件中查找源字串10-10.?列出目錄中所有的符號(hào)鏈接10-11.?將目錄中所有符號(hào)鏈接文件的名字保存到一個(gè)文件中10-12.?一個(gè)C風(fēng)格的for循環(huán)10-13.?在batch mode中使用efax10-14.?簡單的while循環(huán)10-15.?另一個(gè)while循環(huán)10-16.?多條件的while循環(huán)10-17.?C風(fēng)格的while循環(huán)10-18.?until循環(huán)10-19.?嵌套循環(huán)10-20.?break和continue命令在循環(huán)中的效果10-21.?多層循環(huán)的退出10-22.?多層循環(huán)的continue10-23.?在實(shí)際的任務(wù)中使用"continue N"10-24.?使用case10-25.?使用case來創(chuàng)建菜單10-26.?使用命令替換來產(chǎn)生case變量10-27.?簡單的字符串匹配10-28.?檢查輸入字符是否為字母10-29.?使用select來創(chuàng)建菜單10-30.?使用函數(shù)中的select結(jié)構(gòu)來創(chuàng)建菜單11-1.?一個(gè)fork出多個(gè)自身實(shí)例的腳本11-2.?使用printf的例子11-3.?使用read來進(jìn)行變量分配11-4.?當(dāng)使用一個(gè)不帶變量參數(shù)的read命令時(shí), 將會(huì)發(fā)生什么?11-5.?read命令的多行輸入11-6.?檢測方向鍵11-7.?通過文件重定向來使用read命令11-8.?管道輸出到read中的問題11-9.?修改當(dāng)前工作目錄11-10.?使用"let"命令來做算術(shù)運(yùn)算.11-11.?展示eval命令的效果11-12.?強(qiáng)制登出(log-off)11-13.?另一個(gè)"rot13"版本11-14.?在Perl腳本中使用eval命令來強(qiáng)制變量替換11-15.?使用set命令來改變腳本的位置參數(shù)11-16.?反轉(zhuǎn)位置參數(shù)11-17.?重新分配位置參數(shù)11-18.?"Unsett"一個(gè)變量11-19.?使用export命令來將一個(gè)變量傳遞到一個(gè)內(nèi)嵌awk的腳本中11-20.?使用getopts命令來來讀取傳遞給腳本的選項(xiàng)/參數(shù)11-21.?"includ"一個(gè)數(shù)據(jù)文件11-22.?一個(gè)(沒什么用的)source自身的腳本11-23.?exec命令的效果11-24.?一個(gè)exec自身的腳本11-25.?在繼續(xù)處理之前, 等待一個(gè)進(jìn)程的結(jié)束11-26.?一個(gè)結(jié)束自身的腳本程序12-1.?使用ls命令來創(chuàng)建一個(gè)燒錄CDR的內(nèi)容列表12-2.?到底是Hello還是Good-bye12-3.?糟糕的文件名, 刪除當(dāng)前目錄下文件名中包含一些糟糕字符(包括空白的文件.12-4.?通過文件的inode號(hào)來刪除文件12-5.?Logfile: 使用xargs來監(jiān)控系統(tǒng)log12-6.?把當(dāng)前目錄下的文件拷貝到另一個(gè)文件中12-7.?通過名字kill進(jìn)程12-8.?使用xargs分析單詞出現(xiàn)的頻率12-9.?使用expr12-10.?使用date命令12-11.?分析單詞出現(xiàn)的頻率12-12.?哪個(gè)文件是腳本?12-13.?產(chǎn)生10-進(jìn)制隨機(jī)數(shù)12-14.?使用tail命令來監(jiān)控系統(tǒng)log12-15.?在腳本中模擬"grep"的行為12-16.?在1913年的韋氏詞典中查找定義12-17.?檢查列表中單詞的正確性12-18.?轉(zhuǎn)換大寫: 把一個(gè)文件的內(nèi)容全部轉(zhuǎn)換為大寫.12-19.?轉(zhuǎn)換小寫: 將當(dāng)前目錄下的所有文全部轉(zhuǎn)換為小寫.12-20.?Du: DOS到UNIX文本文件的轉(zhuǎn)換.12-21.?rot13: rot13, 弱智加密.12-22.?產(chǎn)生"Crypto-Quote"游戲(譯者: 一種文字游戲)12-23.?格式化文件列表.12-24.?使用column來格式化目錄列表12-25.?nl: 一個(gè)自己計(jì)算行號(hào)的腳本.12-26.?manview: 查看格式化的man頁12-27.?使用cpio來拷貝一個(gè)目錄樹12-28.?解包一個(gè)rpm歸檔文件12-29.?從C文件中去掉注釋12-30.?瀏覽/usr/X11R6/bin12-31.?一個(gè)"改進(jìn)過"的strings命令12-32.?在一個(gè)腳本中使用cmp命令來比較兩個(gè)文件.12-33.?basename和dirname12-34.?檢查文件完整性12-35.?Uudecode編碼后的文件12-36.?查找濫用的鏈接來報(bào)告垃圾郵件發(fā)送者12-37.?分析一個(gè)垃圾郵件域12-38.?獲得一份股票報(bào)價(jià)12-39.?更新FC4(Fedora 4)12-40.?使用ssh12-41.?一個(gè)mail自身的腳本12-42.?按月償還貸款12-43.?數(shù)制轉(zhuǎn)換12-44.?使用"here document"來調(diào)用bc12-45.?計(jì)算圓周率12-46.?將10進(jìn)制數(shù)字轉(zhuǎn)換為16進(jìn)制數(shù)字12-47.?因子分解12-48.?計(jì)算直角三角形的斜邊12-49.?使用seq命令來產(chǎn)生循環(huán)參數(shù)12-50.?字母統(tǒng)計(jì)12-51.?使用getopt來分析命令行選項(xiàng)12-52.?一個(gè)拷貝自身的腳本12-53.?練習(xí)dd12-54.?記錄按鍵12-55.?安全的刪除一個(gè)文件12-56.?文件名產(chǎn)生器12-57.?將長度單位-米, 轉(zhuǎn)化為英里12-58.?使用m413-1.?設(shè)置一個(gè)新密碼13-2.?設(shè)置一個(gè)擦除字符13-3.?保密密碼: 關(guān)閉終端對于密碼的echo13-4.?按鍵檢測13-5.?掃描遠(yuǎn)程機(jī)器上的identd服務(wù)進(jìn)程13-6.?使用pidof命令幫忙kill一個(gè)進(jìn)程13-7.?檢查一個(gè)CD鏡像13-8.?在一個(gè)文件中創(chuàng)建文件系統(tǒng)13-9.?添加一個(gè)新的硬盤驅(qū)動(dòng)器13-10.?用umask將輸出文件隱藏起來13-11.?killall, 來自于/etc/rc.d/init.d14-1.?愚蠢的腳本策略14-2.?將一個(gè)循環(huán)輸出的內(nèi)容設(shè)置到變量中14-3.?找anagram(回文構(gòu)詞法, 可以將一個(gè)有意義的單詞, 變換為1個(gè)或多個(gè)有意義的單詞, 但是還是原來的子母集合)16-1.?使用exec重定向stdin16-2.?使用exec來重定向stdout16-3.?使用exec在同一個(gè)腳本中重定向stdin和stdout16-4.?避免子shell16-5.?while循環(huán)的重定向16-6.?重定向while循環(huán)的另一種形式16-7.?重定向until循環(huán)16-8.?重定向for循環(huán)16-9.?重定向for循環(huán)(stdin和stdout都進(jìn)行重定向)16-10.?重定向if/then測試結(jié)構(gòu)16-11.?用于上面例子的"names.data"數(shù)據(jù)文件16-12.?事件紀(jì)錄17-1.?廣播: 將消息發(fā)送給每個(gè)登陸的用戶17-2.?虛擬文件: 創(chuàng)建一個(gè)2行的虛擬文件17-3.?使用cat的多行消息17-4.?帶有抑制tab功能的多行消息17-5.?使用參數(shù)替換的here document17-6.?上傳一個(gè)文件對到"Sunsite"的incoming目錄17-7.?關(guān)閉參數(shù)替換17-8.?生成另外一個(gè)腳本的腳本17-9.?Here document與函數(shù)17-10.?"匿名"的here Document17-11.?注釋掉一段代碼塊17-12.?一個(gè)自文檔化(self-documenting)的腳本17-13.?在一個(gè)文件的開頭添加文本17-14.?分析一個(gè)郵箱20-1.?子shell中的變量作用域20-2.?列出用戶的配置文件20-3.?在子shell中進(jìn)行并行處理21-1.?在受限模式下運(yùn)行腳本23-1.?簡單函數(shù)23-2.?帶參數(shù)的函數(shù)23-3.?函數(shù)與傳遞給腳本的命令行參數(shù)23-4.?將一個(gè)間接引用傳遞給函數(shù)23-5.?對一個(gè)傳遞給函數(shù)的參數(shù)進(jìn)行解除引用的操作23-6.?再來一次, 對一個(gè)傳遞給函數(shù)的參數(shù)進(jìn)行解除引用的操作23-7.?取兩個(gè)數(shù)中的最大值23-8.?將阿拉伯?dāng)?shù)字轉(zhuǎn)化為羅馬數(shù)字23-9.?測試函數(shù)最大的返回值23-10.?比較兩個(gè)大整數(shù)23-11.?從username中取得用戶的真名23-12.?局部變量的可見范圍23-13.?使用局部變量的遞歸23-14.?漢諾塔24-1.?用在腳本中的別名24-2.?unalias: 設(shè)置與刪除別名25-1.?使用"與列表"來測試命令行參數(shù)25-2.?使用"與列表"來測試命令行參數(shù)的另一個(gè)例子25-3.?將"或列表"和"與列表"結(jié)合使用26-1.?簡單的數(shù)組使用26-2.?格式化一首詩26-3.?多種數(shù)組操作26-4.?用于數(shù)組的字符串操作26-5.?將腳本的內(nèi)容賦值給數(shù)組26-6.?一些數(shù)組專用的小道具26-7.?空數(shù)組與包含空元素的數(shù)組26-8.?初始化數(shù)組26-9.?拷貝和連接數(shù)組26-10.?關(guān)于串聯(lián)數(shù)組的更多信息26-11.?一位老朋友:?冒泡排序26-12.?嵌套數(shù)組與間接引用26-13.?復(fù)雜的數(shù)組應(yīng)用:?埃拉托色尼素?cái)?shù)篩子26-14.?模擬一個(gè)下推堆棧26-15.?復(fù)雜的數(shù)組應(yīng)用:?探索一個(gè)神秘的數(shù)學(xué)序列26-16.?模擬一個(gè)二維數(shù)組, 并使他傾斜27-1.?利用/dev/tcp來檢修故障27-2.?找出與給定PID相關(guān)聯(lián)的進(jìn)程27-3.?網(wǎng)絡(luò)連接狀態(tài)28-1.?隱藏令人厭惡的cookie28-2.?使用/dev/zero來建立一個(gè)交換文件28-3.?創(chuàng)建一個(gè)ramdisk29-1.?一個(gè)錯(cuò)誤腳本29-2.?缺少關(guān)鍵字29-3.?test24, 另一個(gè)錯(cuò)誤腳本29-4.?使用"assert"來測試條件29-5.?捕獲exit29-6.?Control-C之后, 清除垃圾29-7.?跟蹤一個(gè)變量29-8.?運(yùn)行多進(jìn)程(在對稱多處理器(SMP box)的機(jī)器上)31-1.?數(shù)字比較與字符串比較并不相同31-2.?子shell缺陷31-3.?將echo的輸出通過管道傳遞給read命令33-1.?shell包裝33-2.?稍微復(fù)雜一些的shell包裝33-3.?一個(gè)通用的shell包裝, 用來寫日志文件33-4.?包裝awd腳本的shell包裝33-5.?另一個(gè)包裝awd腳本的shell包裝33-6.?將Perl嵌入到Bash腳本中33-7.?將Bash和Perl腳本寫到同一個(gè)文件中33-8.?遞歸調(diào)用自身的(沒用的)腳本33-9.?遞歸調(diào)用自身的(有用的)腳本33-10.?另一個(gè)遞歸調(diào)用自身的(有用的)腳本33-11.?一個(gè)"彩色的"地址數(shù)據(jù)庫33-12.?畫一個(gè)盒子33-13.?顯示彩色文本33-14.?"賽馬"游戲33-15.?返回值小技巧33-16.?返回多個(gè)值的技巧33-17.?傳遞數(shù)組到函數(shù), 從函數(shù)中返回?cái)?shù)組33-18.?anagram游戲33-19.?從shell腳本中調(diào)用窗口部件34-1.?字符串?dāng)U展34-2.?間接變量引用 - 新方法34-3.?使用間接變量引用的簡單數(shù)據(jù)庫應(yīng)用34-4.?使用數(shù)組和其他的小技巧來處理4人隨機(jī)打牌A-1.?mailformat: 格式化一個(gè)e-mail消息A-2.?rn: 一個(gè)非常簡單的文件重命名工具A-3.?blank-rename: 重命名包含空白的文件名A-4.?encryptedpw: 使用一個(gè)本地加密口令, 上傳到一個(gè)ftp服務(wù)器.A-5.?copy-cd: 拷貝一個(gè)數(shù)據(jù)CDA-6.?Collatz序列A-7.?days-between: 計(jì)算兩個(gè)日期之間天數(shù)差A(yù)-8.?構(gòu)造一個(gè)"字典"A-9.?Soundex轉(zhuǎn)換A-10.?"Game of Life"A-11.?"Game of Life"的數(shù)據(jù)文件A-12.?behead: 去掉信件與新消息的頭A-13.?ftpget: 通過ftp下載文件A-14.?password: 產(chǎn)生隨機(jī)的8個(gè)字符的密碼A-15.?fifo: 使用命名管道來做每日的備份A-16.?使用模操作符來產(chǎn)生素?cái)?shù)A-17.?tree: 顯示目錄樹A-18.?string functions: C風(fēng)格的字符串函數(shù)A-19.?目錄信息A-20.?面向?qū)ο髷?shù)據(jù)庫A-21.?hash函數(shù)庫A-22.?使用hash函數(shù)來給文本上色A-23.?深入hash函數(shù)A-24.?掛載USB keychain型的存儲(chǔ)設(shè)備A-25.?保存weblogA-26.?保護(hù)字符串的字面含義A-27.?不保護(hù)字符串的字面含義A-28.?鑒定是否是垃圾郵件服務(wù)器A-29.?垃圾郵件服務(wù)器獵手A-30.?使得wget更易用A-31.?一個(gè)"podcasting"(譯者: 指的是在互聯(lián)網(wǎng)上發(fā)布音視頻文件, 并允許用戶訂閱并自動(dòng)接收的方法)腳本A-32.?基礎(chǔ)回顧A-33.?一個(gè)擴(kuò)展的cd命令C-1.?計(jì)算字符出現(xiàn)次數(shù)K-1.?.bashrc文件樣本L-1.?VIEWDATA.BAT: DOS批處理文件L-2.?viewdata.sh: 轉(zhuǎn)換自VIEWDATA.BAT的shell腳本Q-1.?打印服務(wù)器環(huán)境
本文檔的最新版本是作為一個(gè)歸檔文件bzip2-ed,?"tar包"來發(fā)布的, 其中還包括SGML源代碼和編譯好的HTML版本. 讀者可以從作者的主頁上下載.?pdf版本也可以從作者的主頁上下載. 查看change log來查看校訂歷史.
目錄序總結(jié)
以上是生活随笔為你收集整理的高级Bash脚本编程指南 在线收藏版的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: sip 接听后没有声音
- 下一篇: MAC 用配置设置解决vscode中文乱