登入
|
註冊
|
會員中心
|
結帳
|
培訓課程
魔法弟子
|
自資出版
|
電子書
|
客服中心
|
智慧型立体會員
書名
出版社
作者
isbn
編號
5050魔法眾籌
|
NG書城
|
國際級品牌課程
|
優惠通知
|
霹靂英雄音樂精選
|
CentOS 6.x企業現場實戰寶典(附兩片DVD)
此作者無相關書籍
文學小說
文學
|
小說
商管創投
財經投資
|
行銷企管
人文藝坊
宗教、哲學
社會、人文、史地
藝術、美學
|
電影戲劇
勵志養生
醫療、保健
料理、生活百科
教育、心理、勵志
進修學習
電腦與網路
|
語言工具
雜誌、期刊
|
軍政、法律
參考、考試、教科用書
科學工程
科學、自然
|
工業、工程
家庭親子
家庭、親子、人際
青少年、童書
玩樂天地
旅遊、地圖
|
休閒娛樂
漫畫、插圖
|
限制級
新洞悉UNIX:Shell程式設計篇
作者:
Unix Shells by Example;
分類:
電腦與網路
/
作業系統
出版社:
和碩科技
出版日期:1998/5/1
書籍編號:sb0059863
頁數:0
定價:
500
元
優惠價:
88
折
440
元
書價若有異動,以出版社實際定價為準
絕版書
絕版書:確定不再版的商品,僅提供書籍資訊參考。
評價數:
(請將滑鼠移至星星處進行評價)
目前平均評價:
文字連結
複製語法
新洞悉UNIX:Shell程式設計篇
圖片連結
複製語法
分
享
內容簡介
同類推薦
■ 內容簡介
這是第一本包括了三種最普遍之 UNIX shell 和 Awk、Sed、Grep 的 UNIX 書籍。以前,您若想要學習 UNIX shell 程式設計,可能需要買三、四本書才夠,現在,你只要擁有這本書即可滿足全部的需求。 本書完整且按步就班的引導讀者來學習如何使用三種最重要的 UNIX shells-C shell、Bourne shell 和 Korn shell 以及各種 UNIX shell 程式設計所需的公用程式。在本書,您不僅可以學到什麼是 UNIX shell?UNIX shell 能做些什麼?以及其他的 UNIX 公用程式。您也會學到 shell 指令檔:shell 指令檔能做些什麼?及如何來建立並執行 shell 指令檔。此外,本書並詳細的介紹了每個 shell 程式設計師都應了解的主要工具,包括: (1)Grep、Egrep 和 Fgrep (2)Sed (3)Awk 本書的另一個特色是每個章節都包含了許多詳細的例子(總共超過 300 個),讓您更容易的學習與應用。 您要學習 Shell 程式設計嗎?千萬別錯過本書。 補充附錄:CSH、BSH、KSH 的比較。 ◎ sh、csh、ksh、tcsh 與 bash 的比較 Bourne shell 是第一個被大量使用及標準化的 UNIX shell,幾乎所有版本的 UNIX 都支援它。C Shell 是在 Bourne shell 之後所發展出來,以 BSD 為首的 UNIX 系統都是以它作為標準的簽入 shell,其優點是易於使用及交談能力強,而且與 C 語言的語法十分接近。Korn shell 是這三者中最後發展出的,它與 Bourne shell 完全相容,因此所有 Bourne shell 所發展出的腳本檔(script)皆可在 Korn shell 上正常使用,此外 Korn Shell 也具有 C shell 上的許多優點,例如提供了 alias 的功能等,因此 Korn shell 可以說是結合兩位前輩的特長。 除了執行效率稍差外,Korn shell 在許多方面都比 Bourne shell 為佳,因此 Korn shell 是個十分值得推薦的產品。若要將 Korn shell 與 C shell 相比就很困難,因為二者在許多方面都各有所長,就效率和容易使用上看,Korn shell 是優於 C shell,相信許多使用者對於 C Shell 的執行效率都有負面的印象。 在 shell 的語法方面,Korn shell 是比較接近一般程式語言,而且它具有副程式的功能及提供較多的資料型態。至於 Bourne shell ,它所擁有的資料型態是三種 shell 中最少的,僅提供字串變數和布林型態。在整體考量下 Korn shell 是三者中表現最佳者,其次為 C shell ,最後才是 Bourne shell ,但是在實際使用中仍有其它應列入考慮的因素,如速度是最重要的選擇時,很可能應該採用 Bourne shell ,因它是最基本的 shell,執行的速度最快。 tcsh 是近幾年崛起的一個免費軟體,它雖然不是 UNIX 的標準配備,但是從許多地方您都可以下載到它。如果您是 C shell 的擁護者,筆者建議不妨試試 tcsh,因為您至少可以將它當作是 C shell 來使用。如果您願意花點時間學習,您還可以享受許多它新增的優越功能,例如: 1. tcsh 提供了一個命令列(command line)編輯程式。 2. 提供了命令列補全功能。例如: $tcsh #執行 tcsh >set prompt = % #tcsh 預設的提示符號是「>」,將它改為「%」 %ls #顯示目錄的內容 mailbox psmail xfile_movie %ls -l xfil TAB #當您按下 TAB 鍵之後,tcsh 將會自動產生「e_movie」的字樣 3. 提供了拼字更正功能。它能夠自動檢測並且更正在命令列拼錯的命令或是單字。 4. 危險命令偵測並提醒的功能,避免您一個不小心執行了 rm * 這種殺傷力極大的命令。 5. 提供常用命令的捷徑(shortcut)。 bash 對 Bourne shell 是向下相容(backward compatible),並融入許多 C shell 與 Korn shell 的功能。這些功能其實 C shell(當然也包括了 tcsh)都有,只是過去 Bourne shell 都未支援。以下我們介紹 bash 三點重要的改進: 1. 工作控制(job contorl)。bash 支援了關於工作的訊號與指令,本章稍後會提及。 2. 別名功能(aliases)。alias 命令是用來為一個命令建立另一個名稱,它的運作就像一個巨集,展開成為它所代表的命令。別名並不會替代掉命令的名稱,它只是賦予那個命令另一個名字。 alias 命令是以關鍵字 alias 開頭,接著是命令的新名稱、等號以及別名將代表的命令。在等號的兩邊都不能夠留有空白。在下例中,list 成了 ls 命令的另一個名稱。 $ alias list=ls $ ls mydata today $ list mydata today $ 您也可以用別名來代替命令及其選項,然而這時您需要用單引號將命令及選項括起來,任何您建立別名的命令中若是包含空白的話都必須以單引號括起來。在下例中,別名 lss 指的是 ls 命令及其 -s 選項,而別名 lsa 則指 ls 命令及 -F 選項。ls -s 會以區塊為單位列出檔案及其大小,而 ls -F 則是在目錄名稱之前放一個斜線符號。請注意,單引號將命令及選項都括了起來。 $ alias lss='ls -s' $ lss mydata 14 today 6 reports 1 $ alias lsa='ls -F' $ lsa mydata today /reports $ 您可能經常會用別名來包含命令及參數。若是您經常執行的命令參數中有複雜的特殊字元組合,您可能會希望為它建立別名。例如,假設您經常只列出原始程式及目的檔(以 .c 或 .o 結尾的檔案)。您會需要為 ls 使用一個參數,結合特殊字元 *.[co]。您還可以為 ls 及參數 *.[co] 建立別名,賦予它一個簡單的名稱。在下例中,使用者為命令 ls *.[co] 建立了一個別名 lsc。 $ alias lsc='ls *.[co]' $ lsc main.c main.o lib.c lib.o 您也可以用命令的名稱當作別名,這適用於您應該只使用一個命令的特定選項時,例如 rm、cp 及 mv 命令,-i 選項應該每次都使用,以確保已存在的檔案不會被覆蓋掉。除了每次使用這些命令時都小心翼翼地使用 -i 選項之外,您還可以將命令名稱建成別名,包含住這個選項。在下例中,rm、cp 及 mv 命令被別名為包含 -i 選項。 $ alias rm='rm -i' $ alias mv='mv -i' $ alias cp='cp -i' alias 命令本身會列出所有有效的別名以及它們的命令。您可以用 unalias 命令移除一個別名。在下例中,使用者列出了目前的別名,然後移除 lsa 別名。 $ alias lsa=ls -F list=ls rm=rm -i $ unalias lsa 3. 命令歷程(command history)。BASH shell 加入了 C shell 所提供的命令歷程功能,它以 history 工具程式記錄了最近您執行過的命令。命令是由 1 開始編號,預設值為 500。history 工具程式是一種短期記憶,記錄您最近所執行的命令。要看看這些命令,您可以在命令列鍵入 history 並按 ENTER,如此最近命令的清單將會被顯示出來,並在前方加上編號。 $ history 1 cp mydata today 2 vi mydata 3 mv mydata reports 4 cd reports 5 ls 這些命令在技術上每個都稱為一個事件。事件描述的是一個已經採取的行動(已經被執行的命令)。事件是依照執行的順序而編號,越近的事件其編號碼越大,這些事件都是以它的編號或命令的開頭字元來辨認的。history 工具程式讓您參照一個先前發生過的事件,將它放在命令列上並允許您執行它。最簡單的方法是用上下鍵一次放一個歷程事件在您的命令列上;您並不需要先用 history 顯示清單。按一次向上鍵會將最後一個歷程事件放在您的命令列上,再按一次會放入下一個歷程事件。按向下鍵則會將前一個事件放在命令列上。 BASH shell 也有一個以 ESCTAB 命令啟動的歷程事件補全功能。和標準的命令列補全很像,您輸入您要的歷程事件的部份,接著按 ESC,然後是TAB 鍵。符合您輸入的文字的事件會被找出來並用來補全您的命令列輸入。若是有超過一個的歷程事件符合您輸入的東西,您會聽到一個嗶聲,然後您可以輸入更多的字元以便唯一地辨認出您要的事件。 您也可以用由清單尾端算起的位移來參照一個事件。負的編號會由清單的尾端移到該事件,因而參照到它。在下例中,第四個命令 cd mydata 被以負數的位移參照然後執行。記得您是由清單的尾端算起,在此例是由事件五往上到清單的開頭。由事件五起的位移 4 會指向事件二。 $ !-4 vi mydata 若是未使用事件參照,那麼便假定是最後一個事件。在下例中,命令 ! 本身會執行最後一個命令,在此例中使用者執行了 ls。 $ ! ls mydata today reports 4. 命令列編輯程式。BASH shell 命令列編輯能力是內建的,讓您輕鬆地在執行之前修改您輸入的命令。若是您在輸入命令時拼錯了字,您不需重新輸入整個命令,只需在執行命令之前使用編輯功能糾正錯誤即可。這尤其適合於使用冗長的路徑名稱當作參數的命令時。 命令列編輯作業是 Emacs 編輯命令的一部份。您可以用 Ctrl-F 或向右鍵往前移一個字元,Ctrl-B 或向左鍵往回移一個字元。Ctrl-D 或 DEL 鍵會刪除游標目前所在處的字元。要增加文字的話,您只需要將游標移到您要插入文字的地方並鍵入新字元即可。無論何時,您都可以按 ENTER 鍵執行命令。 5. 允許使用者自訂按鍵。 6. 更豐富的變數型態、命令與控制結構至 shell 中。 bash 與 tcsh 一樣可以從許多 Internet 網站上免費下載,它們的性質也十分類似,都是整合其前一代的產品然後增添新的功能,這些新增的功能主要都著重在強化 shell 的程式設計能力以及讓使用者能夠自行定義自己偏好的作業環境。除了上述的五種 shell 之外,zsh 也是一個廣為 UNIX 程式設計人員與進階使用者所採用的 shell,zsh 基本上也是 Bourne shell 功能的擴充。
跟我學Windows
計算機與人工智慧概論
絕對硬派:Windo
超實用!Word.E
Excel 365商
Linux系統管理達
Redmine 專案
即學即用!精選 30
AI提示工程師的16
超實用!Word.E
為了保障您的權益,新絲路網路書店所購買的商品均享有到貨七天的鑑賞期(含例假日)。退回之商品必須於鑑賞期內寄回(以郵戳或收執聯為憑),且商品必須是全新狀態與完整包裝(商品、附件、內外包裝、隨貨文件、贈品等),否則恕不接受退貨。