µn¤J
¡U
µù¥U
¡U
·|û¤¤¤ß
¡U
µ²±b
¡U
°ö°V½Òµ{
Å]ªk§Ì¤l
¡U
¦Û¸ê¥Xª©
¡U
¹q¤l®Ñ
¡U
«ÈªA¤¤¤ß
¡U
´¼¼z«¬¥ßÊ^·|û
®Ñ¦W
¥Xª©ªÀ
§@ªÌ
isbn
½s¸¹
5050Å]ªk²³Äw
|
NG®Ñ«°
|
°ê»Ú¯Å«~µP½Òµ{
|
Àu´f³qª¾
|
ÅRÆE^¶¯µ¼Öºë¿ï
|
CentOS 6.x¥ø·~²{³õ¹ê¾ÔÄ_¨å(ªþ¨â¤ùDVD)
¦¹§@ªÌµL¬ÛÃö®ÑÄy
¤å¾Ç¤p»¡
¤å¾Ç
¡U
¤p»¡
°ÓºÞ³Ð§ë
°]¸g§ë¸ê
¡U
¦æ¾P¥øºÞ
¤H¤åÃÀ§{
©v±Ð¡Bõ¾Ç
ªÀ·|¡B¤H¤å¡B¥v¦a
ÃÀ³N¡B¬ü¾Ç
¡U
¹q¼vÀ¸¼@
Ày§Ó¾i¥Í
ÂåÀø¡B«O°·
®Æ²z¡B¥Í¬¡¦Ê¬ì
±Ð¨|¡B¤ß²z¡BÀy§Ó
¶i׾Dzß
¹q¸£»Pºô¸ô
¡U
»y¨¥¤u¨ã
Âø»x¡B´Á¥Z
¡U
x¬F¡Bªk«ß
°Ñ¦Ò¡B¦Ò¸Õ¡B±Ð¬ì¥Î®Ñ
¬ì¾Ç¤uµ{
¬ì¾Ç¡B¦ÛµM
¡U
¤u·~¡B¤uµ{
®a®x¿Ë¤l
®a®x¡B¿Ë¤l¡B¤H»Ú
«C¤Ö¦~¡Bµ£®Ñ
ª±¼Ö¤Ñ¦a
®È¹C¡B¦a¹Ï
¡U
¥ð¶¢®T¼Ö
º©µe¡B´¡¹Ï
¡U
¨î¯Å
·s¬}±xUNIX¡GShellµ{¦¡³]p½g
§@ªÌ¡G
Unix Shells by Example¡F
¤ÀÃþ¡G
¹q¸£»Pºô¸ô
¡þ
§@·~¨t²Î
¥Xª©ªÀ¡G
©MºÓ¬ì§Þ
¥Xª©¤é´Á¡G1998/5/1
®ÑÄy½s¸¹¡Gsb0059863
¶¼Æ¡G0
©w»ù¡G
500
¤¸
Àu´f»ù¡G
88
§é
440
¤¸
®Ñ»ùY¦³²§°Ê¡A¥H¥Xª©ªÀ¹ê»Ú©w»ù¬°·Ç
µ´ª©®Ñ
µ´ª©®Ñ¡G½T©w¤£¦Aª©ªº°Ó«~¡A¶È´£¨Ñ®ÑÄy¸ê°T°Ñ¦Ò¡C
µû»ù¼Æ¡G
(½Ð±N·Æ¹«²¾¦Ü¬P¬P³B¶i¦æµû»ù)
¥Ø«e¥§¡µû»ù¡G
¤å¦r³sµ²
½Æ»s»yªk
·s¬}±xUNIX¡GShellµ{¦¡³]p½g
¹Ï¤ù³sµ²
½Æ»s»yªk
¤À
¨É
¤º®e²¤¶
¦PÃþ±ÀÂË
■ 內容簡介
³o是第一本包括了三種最普¹M之 UNIX shell 和 Awk¡BSed¡BGrep 的 UNIX 書籍¡C以前¡A您Y想n學習 UNIX shell 程式³]p¡A可¯à»Ýn¶R三¡B四本書才夠¡A現在¡A你只n擁有³o本書即可滿¨¬全³¡的»Ý求¡C 本書完整且按步就班的引導ŪªÌ來學習如何使用三種最«n的 UNIX shells¡ÐC shell¡BBourne shell 和 Korn shell 以及各種 UNIX shell 程式³]p所»Ý的公用程式¡C在本書¡A您不僅可以學到什»ò是 UNIX shell¡HUNIX shell ¯à做些什»ò¡H以及其他的 UNIX 公用程式¡C您也會學到 shell 指令檔¡Gshell 指令檔¯à做些什»ò¡H及如何來建立並執¦æ shell 指令檔¡C此外¡A本書並¸Ô細的介紹了每個 shell 程式³]p師³£應了¸Ñ的主n工具¡A包括¡G (1)Grep¡BEgrep 和 Fgrep (2)Sed (3)Awk 本書的另一個特¦â是每個章節³£包含了³\多¸Ô細的例子¡]總共¶W¹L 300 個¡^¡AÅý您更容易的學習»P應用¡C 您n學習 Shell 程式³]p嗎¡H千¸U別¿ù¹L本書¡C ¸É充ªþ¿ý¡GCSH¡BBSH¡BKSH 的比¸û¡C ◎ sh¡Bcsh¡Bksh¡Btcsh »P bash 的比¸û Bourne shell 是第一個³Q大¶q使用及標準化的 UNIX shell¡A幾乎所有版本的 UNIX ³£支援它¡CC Shell 是在 Bourne shell 之後所發展出來¡A以 BSD 為º的 UNIX 系統³£是以它作為標準的簽入 shell¡A其優ÂI是易於使用及交½Í¯à力強¡A¦Ó且»P C »y¨¥的»y法十分接ªñ¡CKorn shell 是³o三ªÌ中最後發展出的¡A它»P Bourne shell 完全相容¡A因此所有 Bourne shell 所發展出的¸}本檔¡]script¡^皆可在 Korn shell 上正常使用¡A此外 Korn Shell 也具有 C shell 上的³\多優ÂI¡A例如提供了 alias 的功¯à等¡A因此 Korn shell 可以»¡是結合兩位前½ú的特ªø¡C °£了執¦æ效率稍差外¡AKorn shell 在³\多方±³£比 Bourne shell 為佳¡A因此 Korn shell 是個十分值得推ÂË的產品¡CYn將 Korn shell »P C shell 相比就很困Ãø¡A因為二ªÌ在³\多方±³£各有所ªø¡A就效率和容易使用上看¡AKorn shell 是優於 C shell¡A相信³\多使用ªÌ對於 C Shell 的執¦æ效率³£有t±的印¶H¡C 在 shell 的»y法方±¡AKorn shell 是比¸û接ªñ一¯ë程式»y¨¥¡A¦Ó且它具有副程式的功¯à及提供¸û多的¸ê料型態¡C¦Ü於 Bourne shell ¡A它所擁有的¸ê料型態是三種 shell 中最少的¡A僅提供字串ÅÜ數和布林型態¡C在整Åé¦Ò¶q下 Korn shell 是三ªÌ中ªí現最佳ªÌ¡A其次為 C shell ¡A最後才是 Bourne shell ¡A但是在實»Ú使用中仍有其它應列入¦Ò慮的因素¡A如³t度是最«n的¿ï擇時¡A很可¯à應¸Ó採用 Bourne shell ¡A因它是最基本的 shell¡A執¦æ的³t度最快¡C tcsh 是ªñ幾年崛°_的一個免¶O³nÅé¡A它Áö然不是 UNIX 的標準°t備¡A但是從³\多地方您³£可以下¸ü到它¡C如果您是 C shell 的擁Å@ªÌ¡A筆ªÌ建ij不妨¸Õ¸Õ tcsh¡A因為您¦Ü少可以將它當作是 C shell 來使用¡C如果您Ä@意ªáÂI時¶¡學習¡A您ÁÙ可以享受³\多它新增的優¶V功¯à¡A例如¡G 1. tcsh 提供了一個命令列¡]command line¡^編¿è程式¡C 2. 提供了命令列¸É全功¯à¡C例如¡G $tcsh #執¦æ tcsh >set prompt = % #tcsh ¹w³]的提示符¸¹是¡u>¡v¡A將它改為¡u%¡v %ls #Åã示目¿ý的內容 mailbox psmail xfile_movie %ls -l xfil TAB #當您按下 TAB Áä之後¡Atcsh 將會¦Û動產生¡ue_movie¡v的字樣 3. 提供了拼字更正功¯à¡C它¯à夠¦Û動檢測並且更正在命令列拼¿ù的命令或是單字¡C 4. 危ÀI命令偵測並提¿ô的功¯à¡AÁ×免您一個不小心執¦æ了 rm * ³o種殺傷力極大的命令¡C 5. 提供常用命令的捷徑¡]shortcut¡^¡C bash 對 Bourne shell 是向下相容¡]backward compatible¡^¡A並¿Ä入³\多 C shell »P Korn shell 的功¯à¡C³o些功¯à其實 C shell¡]當然也包括了 tcsh¡^³£有¡A只是¹L去 Bourne shell ³£未支援¡C以下我們介紹 bash 三ÂI«n的改¶i¡G 1. 工作控制¡]job contorl¡^¡Cbash 支援了Ãö於工作的°T¸¹»P指令¡A本章稍後會提及¡C 2. 別名功¯à¡]aliases¡^¡Calias 命令是用來為一個命令建立另一個名稱¡A它的¹B作就像一個巨¶°¡A展¶}成為它所代ªí的命令¡C別名並不會替代掉命令的名稱¡A它只是½á予¨º個命令另一個名字¡C alias 命令是以ÃöÁä字 alias ¶}ÀY¡A接µÛ是命令的新名稱¡B等¸¹以及別名將代ªí的命令¡C在等¸¹的兩Ãä³£不¯à夠留有空白¡C在下例中¡Alist 成了 ls 命令的另一個名稱¡C $ alias list=ls $ ls mydata today $ list mydata today $ 您也可以用別名來代替命令及其¿ï¶µ¡A然¦Ó³o時您»Ýn用單引¸¹將命令及¿ï¶µ括°_來¡A任何您建立別名的命令中Y是包含空白的¸Ü³£必¶·以單引¸¹括°_來¡C在下例中¡A別名 lss 指的是 ls 命令及其 -s ¿ï¶µ¡A¦Ó別名 lsa 則指 ls 命令及 -F ¿ï¶µ¡Cls -s 會以區塊為單位列出檔案及其大小¡A¦Ó ls -F 則是在目¿ý名稱之前放一個斜線符¸¹¡C½Ð注意¡A單引¸¹將命令及¿ï¶µ³£括了°_來¡C $ alias lss='ls -s' $ lss mydata 14 today 6 reports 1 $ alias lsa='ls -F' $ lsa mydata today /reports $ 您可¯à經常會用別名來包含命令及參數¡CY是您經常執¦æ的命令參數中有½ÆÂø的特殊字元組合¡A您可¯à會希望為它建立別名¡C例如¡A假³]您經常只列出原始程式及目的檔¡]以 .c 或 .o 結尾的檔案¡^¡C您會»Ýn為 ls 使用一個參數¡A結合特殊字元 *.[co]¡C您ÁÙ可以為 ls 及參數 *.[co] 建立別名¡A½á予它一個簡單的名稱¡C在下例中¡A使用ªÌ為命令 ls *.[co] 建立了一個別名 lsc¡C $ alias lsc='ls *.[co]' $ lsc main.c main.o lib.c lib.o 您也可以用命令的名稱當作別名¡A³o¾A用於您應¸Ó只使用一個命令的特定¿ï¶µ時¡A例如 rm¡Bcp 及 mv 命令¡A-i ¿ï¶µ應¸Ó每次³£使用¡A以確保已存在的檔案不會³QÂл\掉¡C°£了每次使用³o些命令時³£小心翼翼地使用 -i ¿ï¶µ之外¡A您ÁÙ可以將命令名稱建成別名¡A包含住³o個¿ï¶µ¡C在下例中¡Arm¡Bcp 及 mv 命令³Q別名為包含 -i ¿ï¶µ¡C $ alias rm='rm -i' $ alias mv='mv -i' $ alias cp='cp -i' alias 命令本¨會列出所有有效的別名以及它們的命令¡C您可以用 unalias 命令移°£一個別名¡C在下例中¡A使用ªÌ列出了目前的別名¡A然後移°£ lsa 別名¡C $ alias lsa=ls -F list=ls rm=rm -i $ unalias lsa 3. 命令歷程¡]command history¡^¡CBASH shell 加入了 C shell 所提供的命令歷程功¯à¡A它以 history 工具程式°O¿ý了最ªñ您執¦æ¹L的命令¡C命令是由 1 ¶}始編¸¹¡A¹w³]值為 500¡Chistory 工具程式是一種短期°O憶¡A°O¿ý您最ªñ所執¦æ的命令¡Cn看看³o些命令¡A您可以在命令列Áä入 history 並按 ENTER¡A如此最ªñ命令的清單將會³QÅã示出來¡A並在前方加上編¸¹¡C $ history 1 cp mydata today 2 vi mydata 3 mv mydata reports 4 cd reports 5 ls ³o些命令在技³N上每個³£稱為一個事件¡C事件描z的是一個已經採取的¦æ動¡]已經³Q執¦æ的命令¡^¡C事件是依照執¦æ的¶¶序¦Ó編¸¹¡A¶Vªñ的事件其編¸¹碼¶V大¡A³o些事件³£是以它的編¸¹或命令的¶}ÀY字元來¿ë»{的¡Chistory 工具程式Åý您參照一個先前發生¹L的事件¡A將它放在命令列上並允³\您執¦æ它¡C最簡單的方法是用上下Áä一次放一個歷程事件在您的命令列上¡F您並不»Ýn先用 history Åã示清單¡C按一次向上Áä會將最後一個歷程事件放在您的命令列上¡A再按一次會放入下一個歷程事件¡C按向下Áä則會將前一個事件放在命令列上¡C BASH shell 也有一個以 ESCTAB 命令啟動的歷程事件¸É全功¯à¡C和標準的命令列¸É全很像¡A您¿é入您n的歷程事件的³¡份¡A接µÛ按 ESC¡A然後是TAB Áä¡C符合您¿é入的文字的事件會³Q找出來並用來¸É全您的命令列¿é入¡CY是有¶W¹L一個的歷程事件符合您¿é入的東¦è¡A您會Å¥到一個嗶Án¡A然後您可以¿é入更多的字元以便唯一地¿ë»{出您n的事件¡C 您也可以用由清單尾端算°_的位移來參照一個事件¡Ct的編¸¹會由清單的尾端移到¸Ó事件¡A因¦Ó參照到它¡C在下例中¡A第四個命令 cd mydata ³Q以t數的位移參照然後執¦æ¡C°O得您是由清單的尾端算°_¡A在此例是由事件五往上到清單的¶}ÀY¡C由事件五°_的位移 4 會指向事件二¡C $ !-4 vi mydata Y是未使用事件參照¡A¨º»ò便假定是最後一個事件¡C在下例中¡A命令 ! 本¨會執¦æ最後一個命令¡A在此例中使用ªÌ執¦æ了 ls¡C $ ! ls mydata today reports 4. 命令列編¿è程式¡CBASH shell 命令列編¿è¯à力是內建的¡AÅý您»´ÃP地在執¦æ之前修改您¿é入的命令¡CY是您在¿é入命令時拼¿ù了字¡A您不»Ý«新¿é入整個命令¡A只»Ý在執¦æ命令之前使用編¿è功¯à糾正¿ù»~即可¡C³o尤其¾A合於使用冗ªø的¸ô徑名稱當作參數的命令時¡C 命令列編¿è作業是 Emacs 編¿è命令的一³¡份¡C您可以用 Ctrl-F 或向右Áä往前移一個字元¡ACtrl-B 或向左Áä往回移一個字元¡CCtrl-D 或 DEL Áä會刪°£游標目前所在³B的字元¡Cn增加文字的¸Ü¡A您只»Ýn將游標移到您n插入文字的地方並Áä入新字元即可¡C無½×何時¡A您³£可以按 ENTER Áä執¦æ命令¡C 5. 允³\使用ªÌ¦Ûq按Áä¡C 6. 更Â×富的ÅÜ數型態¡B命令»P控制結構¦Ü shell 中¡C bash »P tcsh 一樣可以從³\多 Internet 網站上免¶O下¸ü¡A它們的性½è也十分Ãþ似¡A³£是整合其前一代的產品然後增添新的功¯à¡A³o些新增的功¯à主n³£µÛ«在強化 shell 的程式³]p¯à力以及Åý使用ªÌ¯à夠¦Û¦æ定義¦Û己偏好的作業環境¡C°£了上z的五種 shell 之外¡Azsh 也是一個廣為 UNIX 程式³]p人員»P¶i¶¥使用ªÌ所採用的 shell¡Azsh 基本上也是 Bourne shell 功¯à的擴充¡C
30¤Ñºë³q Powe
¹Ï¸ÑLINUX«ü¥O¾Þ
LinuxÀH¨«ü«n¡G
³Ì¨Î©çÀɧ¹¥þÅé- L
Windows 11
¯u¥¿¤F¸Ñ®Ö¤ß¡GLin
¸ò§Ú¾ÇWindows
µ´¹ïµw¬£¡GWindo
¶W¹ê¥Î¡IWord¡DE
Excel 365°Ó
¬°¤F«O»Ù±zªºÅv¯q¡A·sµ·¸ôºô¸ô®Ñ©±©ÒÁʶRªº°Ó«~§¡¨É¦³¨ì³f¤C¤ÑªºÅ²½à´Á¡]§t¨Ò°²¤é¡^¡C°h¦^¤§°Ó«~¥²¶·©óŲ½à´Á¤º±H¦^¡]¥H¶lÂW©Î¦¬°õÁp¬°¾Ì¡^¡A¥B°Ó«~¥²¶·¬O¥þ·sª¬ºA»P§¹¾ã¥]¸Ë(°Ó«~¡Bªþ¥ó¡B¤º¥~¥]¸Ë¡BÀH³f¤å¥ó¡BÃØ«~µ¥)¡A§_«h®¤¤£±µ¨ü°h³f¡C