[ 收藏 ] [ 简体中文 ]  
臺灣貨到付款、ATM、超商、信用卡PAYPAL付款,4-7個工作日送達,999元臺幣免運費   在線留言 商品價格為新臺幣 
首頁 電影 連續劇 音樂 圖書 女裝 男裝 童裝 內衣 百貨家居 包包 女鞋 男鞋 童鞋 計算機周邊

商品搜索

 类 别:
 关键字:
    

商品分类

  •  管理

     一般管理学
     市场/营销
     会计
     金融/投资
     经管音像
     电子商务
     创业企业与企业家
     生产与运作管理
     商务沟通
     战略管理
     商业史传
     MBA
     管理信息系统
     工具书
     外文原版/影印版
     管理类职称考试
     WTO
     英文原版书-管理
  •  投资理财

     证券/股票
     投资指南
     理财技巧
     女性理财
     期货
     基金
     黄金投资
     外汇
     彩票
     保险
     购房置业
     纳税
     英文原版书-投资理财
  •  经济

     经济学理论
     经济通俗读物
     中国经济
     国际经济
     各部门经济
     经济史
     财政税收
     区域经济
     统计 审计
     贸易政策
     保险
     经济数学
     各流派经济学说
     经济法
     工具书
     通货膨胀
     财税外贸保险类考试
     英文原版书-经济
  •  社会科学

     语言文字
     社会学
     文化人类学/人口学
     新闻传播出版
     社会科学总论
     图书馆学/档案学
     经典名家作品集
     教育
     英文原版书-社会科学
  •  哲学

     哲学知识读物
     中国古代哲学
     世界哲学
     哲学与人生
     周易
     哲学理论
     伦理学
     哲学史
     美学
     中国近现代哲学
     逻辑学
     儒家
     道家
     思维科学
     马克思主义哲学
     经典作品及研究
     科学哲学
     教育哲学
     语言哲学
     比较哲学
  •  宗教

  •  心理学

  •  古籍

     经部  史类  子部  集部  古籍管理  古籍工具书  四库全书  古籍善本影音本  中国藏书
  •  文化

     文化评述  文化随笔  文化理论  传统文化  世界各国文化  文化史  地域文化  神秘文化  文化研究  民俗文化  文化产业  民族文化  书的起源/书店  非物质文化遗产  文化事业  文化交流  比较文化学
  •  历史

     历史普及读物
     中国史
     世界史
     文物考古
     史家名著
     历史地理
     史料典籍
     历史随笔
     逸闻野史
     地方史志
     史学理论
     民族史
     专业史
     英文原版书-历史
     口述史
  •  传记

  •  文学

  •  艺术

     摄影
     绘画
     小人书/连环画
     书法/篆刻
     艺术设计
     影视/媒体艺术
     音乐
     艺术理论
     收藏/鉴赏
     建筑艺术
     工艺美术
     世界各国艺术概况
     民间艺术
     雕塑
     戏剧艺术/舞台艺术
     艺术舞蹈
     艺术类考试
     人体艺术
     英文原版书-艺术
  •  青春文学

  •  文学

     中国现当代随笔
     文集
     中国古诗词
     外国随笔
     文学理论
     纪实文学
     文学评论与鉴赏
     中国现当代诗歌
     外国诗歌
     名家作品
     民间文学
     戏剧
     中国古代随笔
     文学类考试
     英文原版书-文学
  •  法律

     小说
     世界名著
     作品集
     中国古典小说
     四大名著
     中国当代小说
     外国小说
     科幻小说
     侦探/悬疑/推理
     情感
     魔幻小说
     社会
     武侠
     惊悚/恐怖
     历史
     影视小说
     官场小说
     职场小说
     中国近现代小说
     财经
     军事
  •  童书

  •  成功/励志

  •  政治

  •  军事

  •  科普读物

  •  计算机/网络

     程序设计
     移动开发
     人工智能
     办公软件
     数据库
     操作系统/系统开发
     网络与数据通信
     CAD CAM CAE
     计算机理论
     行业软件及应用
     项目管理 IT人文
     计算机考试认证
     图形处理 图形图像多媒体
     信息安全
     硬件
     项目管理IT人文
     网络与数据通信
     软件工程
     家庭与办公室用书
  •  建筑

     执业资格考试用书  室内设计/装潢装修  标准/规范  建筑科学  建筑外观设计  建筑施工与监理  城乡规划/市政工程  园林景观/环境艺术  工程经济与管理  建筑史与建筑文化  建筑教材/教辅  英文原版书-建筑
  •  医学

     中医
     内科学
     其他临床医学
     外科学
     药学
     医技学
     妇产科学
     临床医学理论
     护理学
     基础医学
     预防医学/卫生学
     儿科学
     医学/药学考试
     医院管理
     其他医学读物
     医学工具书
  •  自然科学

     数学
     生物科学
     物理学
     天文学
     地球科学
     力学
     科技史
     化学
     总论
     自然科学类考试
     英文原版书-自然科学
  •  工业技术

     环境科学
     电子通信
     机械/仪表工业
     汽车与交通运输
     电工技术
     轻工业/手工业
     化学工业
     能源与动力工程
     航空/航天
     水利工程
     金属学与金属工艺
     一般工业技术
     原子能技术
     安全科学
     冶金工业
     矿业工程
     工具书/标准
     石油/天然气工业
     原版书
     武器工业
     英文原版书-工业技
  •  农业/林业

     园艺  植物保护  畜牧/狩猎/蚕/蜂  林业  动物医学  农作物  农学(农艺学)  水产/渔业  农业工程  农业基础科学  农林音像
  •  外语

  •  考试

  •  教材

  •  工具书

  •  中小学用书

  •  中小学教科书

  •  动漫/幽默

  •  烹饪/美食

  •  时尚/美妆

  •  旅游/地图

  •  家庭/家居

  •  亲子/家教

  •  两性关系

  •  育儿/早教

  •  保健/养生

  •  体育/运动

  •  手工/DIY

  •  休闲/爱好

  •  英文原版书

  •  港台图书

  •  研究生
     工学
     公共课
     经济管理
     理学
     农学
     文法类
     医学

  •  音乐
     音乐理论

     声乐  通俗音乐  音乐欣赏  钢琴  二胡  小提琴
  • UNIX/Linux應用、編程與繫統管理(第3版)(國外計算機科學經典教
    該商品所屬分類:研究生 -> 研究生
    【市場價】
    489-710
    【優惠價】
    306-444
    【作者】 (美)達斯 著,賈洪 ,李莉 譯 
    【所屬類別】 圖書  教材  研究生/本科/專科教材  經濟管理類圖書  計算機/網絡  操作繫統/繫統開發  LINUX圖書  計算機/網絡  操作繫統/繫統開發  UNIXSolaris 
    【出版社】清華大學出版社 
    【ISBN】9787302355847
    【折扣說明】一次購物滿999元台幣免運費+贈品
    一次購物滿2000元台幣95折+免運費+贈品
    一次購物滿3000元台幣92折+免運費+贈品
    一次購物滿4000元台幣88折+免運費+贈品
    【本期贈品】①優質無紡布環保袋,做工棒!②品牌簽字筆 ③品牌手帕紙巾
    版本正版全新電子版PDF檔
    您已选择: 正版全新
    溫馨提示:如果有多種選項,請先選擇再點擊加入購物車。
    *. 電子圖書價格是0.69折,例如了得網價格是100元,電子書pdf的價格則是69元。
    *. 購買電子書不支持貨到付款,購買時選擇atm或者超商、PayPal付款。付款後1-24小時內通過郵件傳輸給您。
    *. 如果收到的電子書不滿意,可以聯絡我們退款。謝謝。
    內容介紹



    開本:16開
    紙張:膠版紙
    包裝:平裝

    是否套裝:否
    國際標準書號ISBN:9787302355847
    作者:(美)達斯著,賈洪?,李莉譯

    出版社:清華大學出版社
    出版時間:2014年04月 

        
        
    "

    內容簡介


    UNIX是計算機發展歷*成功的操作繫統家族。它誕生於貝爾實驗室,爾後迅速成為世界上操作繫統的主流並延續至今。Linux派生於UNIX,並且在小型機和桌面計算機領域成為和微軟的Windows並駕齊驅的操作繫統家族。

    《UNIX/Linux應用、編程與繫統管理(第3版)》兼顧用戶和程序員的思路來編寫,是終極的UNIX/Linux教材。本書既有教學工具又有詳盡的參考資料,非常適合於任何UNIX或Linux相關課程。與類似教材不同的是,本書設置了一個強大的教學框架,能夠使入門級的學生牢固地掌握基本概念,而高級主題章節能激發更有經驗的讀者超越基礎知識。書中提供了近千道練習和自測題,用於讓學生測試和鞏固他們對知識的理解。




    作者簡介


    SumitabhaDas,獲電子工程學位。他在國防部任職時開始對UNIX感興趣並深入該領域研究。Sumitabha在UNIX實際應用方面積累了豐富的經驗,對UNIX有著獨到的見解。目前,他致力於講授UNIX繫統和繫統開發課程。

    目錄
    第I部分UNIX之用戶篇
    第1章UNIX簡介
    1.1操作繫統
    1.2UNIX操作繫統
    1.3了解你的計算機
    1.4繫統管理員
    1.5登錄和注銷
    1.5.1登錄
    1.5.2注銷
    1.6實踐練習
    1.6.1用date和who查看繫統信息
    1.6.2用ps查看進程
    1.6.3處理文件
    1.6.4處理目錄


    第I部分UNIX之用戶篇

    第1章UNIX簡介

    1.1操作繫統

    1.2UNIX操作繫統

    1.3了解你的計算機

    1.4繫統管理員

    1.5登錄和注銷

    1.5.1登錄

    1.5.2注銷

    1.6實踐練習

    1.6.1用date和who查看繫統信息

    1.6.2用ps查看進程

    1.6.3處理文件

    1.6.4處理目錄

    1.7UNIX的成功之路

    1.7.1伯克利:第二學派

    1.7.2UNIX的分化

    1.7.3互聯網

    1.7.4Windows的威脅

    1.8POSIX和單一UNIX規範

    1.9Linux和GNU

    1.10UNIX體繫結構

    1.10.1分工:Kernel和shell

    1.10.2文件和進程

    1.10.3繫統調用

    1.11UNIX的功能

    1.11.1多用戶繫統

    1.11.2多任務繫統

    1.11.3應用程序庫

    1.11.4構建基塊方法

    1.11.5模式匹配

    1.11.6程序設計實用工具

    1.11.7文檔

    1.12小結

    1.13自測題

    1.14習題

    第2章熟悉UNIX命令

    2.1命令基礎

    2.1.1PATH:定位命令

    2.1.2命令的存放位置

    2.2命令結構

    2.3命令應用的靈活性

    2.4man:聯機幫助

    2.4.1導航與查找

    2.4.2用man-k和man-f獲取更多幫助

    2.5man文檔

    2.5.1了解man頁

    2.5.2用man來理解man

    2.6echo:顯示消息

    2.7printf:echo的替代命令

    2.8script:記錄會話

    2.9以mailx命令使用電子郵件

    2.9.1發送郵件

    2.9.2接收郵件

    2.9.3mailx內部命令

    2.10passwd:改變密碼

    2.11uname:顯示計算機名和操作繫統

    2.12who:了解用戶

    2.13date:顯示繫統日期

    2.14stty:在出錯時

    2.15XWindow繫統

    2.15.1終端模擬器

    2.15.2文件管理器

    2.16小結

    2.17自測題

    2.18習題

    第3章文件繫統

    3.1文件

    3.1.1普通(常規)文件

    3.1.2目錄文件

    3.1.3設備文件

    3.2文件名中有什麼

    3.3文件繫統的層次結構

    3.4UNIX文件繫統

    3.5隨命令一起使用路徑名

    3.6HOME變量和~:主目錄

    3.7pwd和cd:在文件繫統中導航

    3.8相對路徑名(.和..)

    3.9mkdir:創建目錄

    3.10rmdir:刪除目錄

    3.11ls:列出文件

    3.12cp:復制文件

    3.13mv:重命名文件

    3.14rm:刪除文件

    3.15cat:顯示和串聯文件

    3.16more:UNIX分頁器

    3.17pico:基本文本編輯

    3.17.1導航

    3.17.2文本編輯

    3.18wc:計算行數、字數和字符數

    3.19lp:打印文件

    3.20od:查看不可打印字符

    3.21dos2unix、unix2dos和Tofrodos:在DOS和UNIX之間轉換

    3.22tar:存檔程序

    3.23gzip:壓縮程序

    3.24zip:壓縮和存檔程序

    3.25使用這些命令的其他方式

    3.26小結

    3.27自測題

    3.28習題

    第4章文件屬性

    4.1重溫ls(-l):列出文件屬性

    4.2文件權限

    4.3chmod:改變文件權限

    4.3.1相對權限

    4.3.2賦予權限

    4.3.3遞推操作(-R)

    4.4目錄

    4.4.1讀權限

    4.4.2寫權限

    4.4.3執行權限

    4.5umask:默認的文件與目錄權限

    4.6文件繫統和inode

    4.7ln:創建硬鏈接

    4.8再論ln:創建符號鏈接

    4.9文件所有權

    4.9.1chown:改變文件所有權

    4.9.2chgrp:改變用戶組所有者

    4.9.3如何處理入侵者

    4.10修改時間與訪問時間

    4.11find:定位文件

    4.11.1選擇準則

    4.11.2find操作符(!,-o和-a)

    4.11.3操作部分的操作符

    4.12小結

    4.13自測題

    4.14習題

    第5章vi/vim編輯器

    5.1vi基礎

    5.2一些提示

    5.3輸入模式--輸入和替換文本

    5.3.1插入和追加文本(i和a)

    5.3.2在行的兩端插入和追加文本(I和A)

    5.3.3新建一行(o和O)

    5.3.4替換文本(r、s、R和S)

    5.3.5輸入控制字符([Ctrl-v])

    5.4保存文本並退出--ex模式

    5.4.1保存工作(:w)

    5.4.2保存並退出(:x和:wq)

    5.4.3中止編輯(:q)

    5.4.4寫入選定行

    5.4.5退出到shell(:sh和[Ctrl-z])

    5.5從崩潰中恢復(:recover和-r)

    5.6導航

    5.6.14個方向上的相對移動(h、j、k和l)

    5.6.2滾動([Ctrl-f]、[Ctrl-b]、[Ctrl-d]和[Ctrl-u])

    5.6.3單詞導航(b、e和w)

    5.6.4移到行的末端(0、|和$)

    5.6.5移動(G)

    5.7編輯文本,不使用操作符

    5.7.1刪除文本(x、X和dd)

    5.7.2移動文本(p)

    5.7.3合並行(J)

    5.7.4改變大小寫(~)

    5.8糾正C程序

    5.9用操作符編輯文本

    5.9.1刪除和移動文本(d、p和P)

    5.9.2復制文本(y、p和P)

    5.9.3修改文本(c)

    5.10在文件之間復制和移動文本

    5.11撤消之前的編輯指令(u和U)

    5.12查找模式(/和?)

    5.13重復上一條命令(.)

    5.14替代-查找並替換(:s)

    5.15set:定制vi

    5.16map:映射鍵盤的按鍵

    5.17abbr:文本輸入的縮寫

    5.18小結

    5.19自測題

    5.20習題

    第6章shell

    6.1作為命令處理器的shell

    6.2shell提供的功能

    6.3模式匹配--通配符

    6.3.1*和?

    6.3.2字符類

    6.3.3匹配句點

    6.3.4綜述

    6.4轉義與引用

    6.4.1轉義

    6.4.2引用

    6.4.3在echo中進行轉義

    6.5重定向

    6.5.1標準輸入

    6.5.2標準輸出

    6.5.3文件描述符

    6.5.4標準錯誤

    6.5.5過濾器--使用標準輸入與標準輸出

    6.6集體處理

    6.6.1復制描述符

    6.6.2命令分組

    6.7/dev/null和/dev/tty:兩個獨立的文件

    6.8管道

    6.9tee:創建一個T型三通

    6.10命令替換

    6.11shell變量

    6.11.1引用和轉義的影響

    6.11.2使用shell變量的場合

    6.12shell腳本

    6.13shell對命令行的處理

    6.14有關通配符的更多信息

    6.15xargs:構建動態命令行

    6.16小結

    6.17自測題

    6.18習題

    第7章進程

    7.1進程基礎

    7.2shell和init

    7.3ps:顯示進程屬性

    7.4繫統進程和init

    7.5進程創建機制

    7.6繼承的進程屬性

    7.7不能使用單獨進程的情景

    7.8進程狀態與僵尸進程(Zombie)

    7.9信號處理

    7.10在後臺運行作業

    7.10.1&:不注銷

    7.10.2nohup:安全注銷

    7.11作業控制

    7.12at和batch:推後執行

    7.12.1at:一次執行

    7.12.2batch:在批隊列中執行作業

    7.12.3限制at和batch的使用

    7.13cron和crontab:定期運行作業

    7.14小結

    7.15自測題

    7.16習題

    第8章shell-定制環境

    8.1shell

    8.2環境變量

    8.3常見環境變量

    8.4別名

    8.5命令歷史記錄

    8.5.1訪問之前的命令

    8.5.2在先前命令中進行替換

    8.5.3使用上一條命令中的參數($_)

    8.5.4歷史記錄變量

    8.6行內命令編輯

    8.7~替換

    8.8使用set選項

    8.9初始化腳本

    8.9.1登錄腳本

    8.9.2rc文件

    8.10Cshell

    8.10.1局部變量和環境變量

    8.10.2別名

    8.10.3歷史記錄

    8.10.4其他shell變量

    8.10.5初始化腳本

    8.11目錄棧操作

    8.12小結

    8.13自測題

    8.14習題

    第9章簡單過濾器

    9.1pr:對文件進行編頁

    9.2對比文件

    9.3cmp:逐字節對比

    9.4comm:哪些共同內容

    9.5diff:將一個文件轉換為另一文件

    9.6head:顯示一個文件的開頭

    9.7tail:顯示文件的末尾

    9.8cut:垂直劃分文件

    9.9paste:粘貼文件

    9.10sort:對文件進行排序

    9.11uniq:定位重復行和非重復行

    9.12tr:變換字符

    9.13應用過濾器

    9.13.1列出當前目錄中5個的文件

    9.13.2創建一份單詞使用情況列表

    9.13.3找出兩個密碼文件之間的差別

    9.14小結

    9.15自測題

    9.16習題

    第10章使用正則表達式的過濾器--grep和sed

    10.1示例數據庫

    10.2grep:查找模式

    10.2.1grep中的引用

    10.2.2grep失敗的場合

    10.3grep選項

    10.4基本正則表達式(BRE)--簡介

    10.4.1字符類

    10.4.2*

    10.4.3句點

    10.4.4指定模式位置(^和$)

    10.字符失去其意義的情景

    10.5擴展正則表達式(ERE)和egrep

    10.5.1+和?

    10.5.2匹配多種模式(|、(和))

    10.6sed:流編輯器

    10.7行尋址

    10.8sed選項

    10.9上下文尋址

    10.10將選定行寫入文件(w)

    10.11文本編輯

    10.11.1插入和改變行(i、a、c)

    10.11.2刪除行(d)

    10.12替換(s)

    10.12.1在替換中使用正則表達式

    10.12.2記憶模式(//)

    10.13基本正則表達式回顧

    10.13.1重復模式(&)

    10.13.2間隔正則表達式(IRE)

    10.13.3標記正則表達式(TRE)

    10.14應用IRE和TRE

    10.14.1處理電話簿

    10.14.2用POSIX兼容的函數替換過時的函數

    10.14.3變換URL中的路徑名

    10.15小結

    10.16自測題

    10.17習題

    第11章聯網工具

    11.1TCP/IP基礎知識

    11.2解析主機名和IP地址

    11.2.1/etc/hosts:主機文件

    11.2.2域名繫統(DNS)

    11.3客戶端-服務器:網絡應用程序如何通信

    11.4ping:檢查網絡

    11.5telnet:遠程登錄

    11.6ftp:文件傳輸協議

    11.6.1基本文件與目錄處理

    11.6.2傳送文件

    11.6.3匿名FTP

    11.7密碼學基礎

    11.7.1對稱密鑰算法

    11.7.2非對稱密鑰算法

    11.8SSH:安全shell

    11.8.1主機驗證

    11.8.2rhosts/shosts驗證機制

    11.8.3采用對稱算法的用戶驗證

    11.8.4使用SSH代理進行非交互式登錄

    11.9SSH協議

    11.9.1遠程登錄與執行命令(ssh和slogin)

    11.9.2用sftp和scp進行文件傳輸

    11.10互聯網郵件

    11.11MIME:處理郵件中的二進制附件

    11.12在TCP/IP網絡上使用XWindow

    11.12.1顯示器

    11.12.2使用DISPLAY變量

    11.12.3使用-display選項

    11.13HTTP和萬維網

    11.13.1統一資源定位符(URL)

    11.13.2HTTP:Web的協議

    11.13.3運行外部程序

    11.13.4HTML:網頁的語言

    11.13.5Web瀏覽器

    11.14Web上的多媒體:重溫MIME

    11.15小結

    11.16自測題

    11.17習題



    第II部分UNIX之程序員篇

    第12章用awk進行過濾和程序設計

    12.1awk預備知識

    12.2使用print和printf

    12.3數字處理

    12.4變量和表達式

    12.5比較與邏輯運算符

    12.5.1字符串和數值比較

    12.5.2~和!~:正則表達式運算符

    12.5.3邏輯運算符

    12.6-f選項:將awk程序存儲在文件中

    12.7BEGIN和END節

    12.8位置參數

    12.9數組

    12.9.1關聯(哈希)數組

    12.9.2ENVIRON[]:環境數組

    12.10內置變量

    12.11函數

    12.12控制流--if語句

    12.13for循環

    12.14while循環

    12.15結論

    12.16小結

    12.17自測題

    12.18習題

    第13章shell程序設計

    13.1shell腳本

    13.1.1script.sh:一個簡單腳本

    13.1.2She-Bang行

    13.2read:使腳本變為交互式的

    13.3使用命令行參數

    13.4exit和$?:命令的

    退出狀態

    13.5邏輯運算符&&和||--條件執行

    13.6if條件句

    13.7使用test和[]對表達式求值

    13.7.1數值比較

    13.7.2[]:test的快捷方式

    13.7.3字符串比較

    13.7.4文件屬性檢驗

    13.7.5使用復合條件

    13.8兩個重要的程序設計習慣

    13.8.1以交互式、非交互式執行一項任務

    13.8.2用不同名稱調用腳本($0)

    13.9case條件句

    13.10expr、bc和basename:計算與字符串處理

    13.10.1用expr進行計算

    13.10.2用bc進行浮點計算

    13.10.3用expr處理字符串

    13.10.4basename:改變文件名擴展

    13.11示例程序1:自動選擇上一個C程序

    13.12for:用列表進行循環

    13.12.1列表的來源

    13.12.2使用for的重要應用

    13.13while:循環

    13.13.1在循環中處理重定向

    13.13.2使用while等待文件

    13.13.3找出用戶占用的空間

    13.13.4break和continue

    13.14示例腳本2:向備份文件提供數字擴展名

    13.15用set和shift處理位置參數

    13.15.1按名稱殺死進程

    13.15.2shift:左移位置參數

    13.15.3IFS變量:set的默認分隔符

    13.16示例腳本3:已下載文件的目錄

    13.17Here文檔(<<)

    13.18shell函數

    13.19trap:腳本如何處理信號

    13.20eval:兩次求值

    13.21exec語句

    13.22小結

    13.23自測題

    13.24習題

    第14章perl--高級操縱器

    14.1perl預備知識

    14.2變量和常數

    14.3運算符

    14.3.1比較與邏輯運算符

    14.3.2串聯運算符和重復運算符(.和x)

    14.4標準條件句與循環

    14.4.1if條件句

    14.4.2while、do-while和for循環

    14.5從命令行參數讀取文件

    14.5.1用單行代碼讀取文件

    14.5.2在腳本中讀取文件

    14.6當前行號($.)和範圍運算符(..)

    14.7$_:默認變量

    14.8字符串處理函數

    14.9列表和數組

    14.10foreach:循環遍歷個列表

    14.11兩個重要的列表函數

    14.11.1split:分割到列表或數組中

    14.11.2join:聯接列表

    14.12dec2bin.pl:將十進制數變換為二進制

    14.13關聯數組

    14.14使用正則表達式

    14.14.1識別空白、數位和單詞

    14.14.2IRE的TRE功能

    14.15用s和tr函數替換

    14.16文件處理

    14.17文件測試

    14.18子例程

    14.19用perl進行CGI程序設計--概述

    14.19.1查詢字符串

    14.19.2GET和POST:請求方法

    14.20小結

    14.21自測題

    14.22習題

    第15章C語言簡介

    15.1C語言

    15.2first_prog.c:理解我們的個C程序

    15.2.1預處理器部分

    15.2.2主體

    15.2.3main:獨一無二的函數

    15.3printf和scanf:兩個重要函數

    15.3.1printf:打印到終端

    15.3.2scanf:由鍵盤輸入

    15.4變量和常數

    15.5基本數據類型

    15.5.1整型

    15.5.2浮點類型

    15.5.3字符類型

    15.6sizeof.c:確定基本數據類型的大小

    15.7符號常量:有名稱的常量

    15.8數組

    15.9arrays.c:打素

    15.10結構

    15.11運算符和表達式

    15.11.1位運算符

    15.11.2自動變換

    15.11.3隱式變換

    15.12type_conversion.c:演示類型變換

    15.13求值順序

    15.13.1運算符優先級

    15.13.2運算符結合性

    15.14控制流回顧

    15.14.1用switch進行決策

    15.14.2用do-while重復

    15.14.3break和continue

    15.15函數

    15.16first_func.c:兩個參數和返回值

    15.17函數實參、形參和局部變量

    15.17.1按值傳遞

    15.17.2swap_failure.c:形參與局部變量的可見性

    15.17.3以數組為函數實參

    15.17.4以結構作為函數實參

    15.18指針

    15.19pointers.c:指針的基本功能

    15.20指針屬性

    15.20.1指針運算

    15.20.2其他屬性

    15.21指針和函數

    15.21.1解決交換問題

    15.21.2用指針返回多個值

    15.22指針和其他數據類型

    15.22.1指針和數組

    15.22.2指針和字符串

    15.22.3字符串數組

    15.22.4指針和結構

    15.23小結

    15.24自測題

    15.25習題

    第16章程序開發工具

    16.1處理擁有多個源文件的C應用程序

    16.1.1包含多個源文件的應用程序

    16.1.2編譯和鏈接應用程序

    16.1.3為什麼需要.o文件

    16.2make:使程序保持

    16.2.1刪除冗餘

    16.2.2make的其他功能:清理與備份

    16.2.3宏

    16.3ar:生成庫(檔案)

    16.3.1使用庫

    16.3.2用make維護檔案

    16.4靜態庫和共享庫

    16.5用SCCS、RCS和CVS實現版本控制

    16.6SCCS會話

    16.6.1admin:創建一個SCCS文件

    16.6.2get:簽出

    16.6.3delta:簽入

    16.6.4unget:如果改變主意

    16.7活動與歷史信息

    16.7.1sact:顯示活動狀態

    16.7.2prs:顯示SCCS歷史

    16.8繼續以SCCS編輯

    16.8.1get-r:改變默認的編號順序

    16.8.2處理多個版本

    16.8.3rmdel和comb:刪除和合並版本

    16.8.4使用標識關鍵字

    16.9控制對SCCS的訪問權限

    16.9.1控制用戶訪問

    16.9.2控制發布版本

    16.10版本控制繫統(RCS)

    16.10.1用ci創建RCS文件

    16.10.2co和ci:簽出和簽入

    16.10.3指定修訂

    16.10.4rlog和rcs:其他RCS功能

    16.11並發版本繫統(CVS)

    16.11.1建立存儲庫

    16.11.2導入文件

    16.11.3簽出

    16.11.4編輯和簽入

    16.11.5合並和解決衝突

    16.11.6設置標記並導出存儲庫

    16.11.7其他功能

    16.12用gdb調試程序

    16.12.1啟動gdb

    16.12.2使用斷點

    16.12.3單步執行程序

    16.12.4再賦值

    16.12.5設定觀察點

    16.12.6gdb的其他功能

    16.13小結

    16.14自測題

    16.15習題

    第17章繫統程序設計I--文件

    17.1繫統調用的基礎知識

    17.1.1繫統調用剖析

    17.1.2繫統調用與庫函數的對比

    17.2errno和perror:處理錯誤

    17.3open:打開和創建文件

    17.4close:關閉文件

    17.5read:讀取文件

    17.6write:寫文件

    17.7ccp.c:復制文件

    17.8lseek:定位偏移指針

    17.9truncate和ftruncate:截短文件

    17.10umask:在創建期間修改文件權限

    17.11目錄導航

    17.12讀取目錄

    17.13修改目錄中的項目

    17.13.1mkdir和rmdir:創建和刪除目錄

    17.13.2link和symlink:創建硬鏈接和符號鏈接

    17.13.3unlink:刪除鏈接

    17.13.4rename:對文件、目錄或符號鏈接重命名

    17.14讀取Inode:structstat和stat

    17.14.1attributes.c:顯示一些文件屬性

    17.14.2S_IFMT:處理st_mode成員

    17.14.3用S_ISxxx宏確定文件類型

    17.14.4訪問權限位

    17.14.5lsdir.c:僅列出目錄

    17.15access:檢查實際用戶的權限

    17.16修改文件屬性

    17.16.1chmod和fchmod:改變文件權限

    17.16.2chown:改變所有權

    17.16.3utime:改變時間戳記

    17.16.4atimemtime.c:創建一個具有相同時間戳記的文件

    17.17小結

    17.18自測題

    17.19習題

    第18章繫統程序設計II--進程控制

    18.1進程回顧

    18.1.1虛擬地址空間

    18.1.2進程表

    18.2進程環境

    18.3fork:復制當前進程

    18.4exec:進程創建的終步驟

    18.4.1execl和execv:關鍵成員

    18.4.2其他exec成員

    18.5收集退出狀態

    18.5.1wait:當父進程等待時

    18.5.2waitpid:一種功能更強大的等待機制

    18.6fork_exec_wait.c:使用全部三個調用

    18.7文件共享

    18.7.1文件說明符表

    18.7.2文件表

    18.7.3vnode表

    18.7.4當鏈接發生變化時

    18.8文件說明符處理

    18.8.1dup和dup2:復制文件說明符

    18.8.2redirection.c:後討論重定向

    18.8.3fcntl:對其推薦程度高於dup和dup

    18.9信號處理

    18.10sigaction:安裝信號處理器

    18.10.1signal.c:捕獲SIGALRM信號

    18.10.2捕獲終端生成的信號

    18.11killprocess.c:使用fork-exec-wait和SIGCHLD

    18.12用未命名管道實現進程間通信

    18.12.1和fork一起使用pipe

    18.12.2pipe2.c:在管道中運行UNIX命令

    18.13小結

    18.14自測題

    18.15習題



    第III部分繫統管理

    第19章繫統管理

    19.1root:繫統管理員的登錄

    19.2管理員的特權

    19.3用戶管理

    19.3.1理解/etc/group

    19.3.2理解/etc/passwd

    19.3.3添加和修改用戶配置文件

    19.4維護安全

    19.4.1受限制的shell

    19.4.2Set-User-Id(SUID):臨時能力

    19.4.3粘著位

    19.5啟動與關機

    19.5.1啟動

    19.5.2關機

    19.6init如何控制繫統

    19.6.1init如何創建shell

    19.6.2rc腳本

    19.7設備文件

    19.7.1塊設備和字符設備

    19.7.2主次設備號

    19.8文件繫統

    19.8.1文件繫統的組成部分

    19.8.2標準文件繫統及其類型

    19.9加載和卸載文件繫統

    19.9.1mount:加載文件繫統

    19.9.2umount:卸載文件繫統

    19.10fsck:文件繫統檢查

    19.11管理磁盤空間

    19.11.1df:報告空閑空間

    19.11.2du:磁盤利用率

    19.11.3find回顧:管理員的工具

    19.12處理軟盤

    19.12.1format和fdformat:格式化磁盤

    19.12.2dd:復制磁盤

    19.12.3處理DOS磁盤

    19.13tar:備份文件

    19.13.1備份文件(-c)

    19.13.2恢復文件(-x)

    19.13.3顯示檔案(-t)

    19.13.4其他選項

    19.14用rpm安裝程序

    19.14.1安裝和升級包

    19.14.2刪除包

    19.14.3查詢包

    19.15小結

    19.16自測題

    19.17習題



    附錄ACshell--程序設計構造

    附錄BKorn和Bashshell--獨有的程序設計構造

    附錄CGNUemacs編輯器

    附錄Dvi/vim命令參考

    附錄E正則表達式超集

    附錄F常用操作指南

    附錄GASCII字符集

    附錄H術語表

    附錄I自測題解答




    前言
    前 言
    一門不能改變思維方式的語言是不值得掌握的。
    —Larry Wall(Perl的發明者),RandalSchwartz

    早在開始講授本課程之前,我就決定寫一本關於UNIX的書。我對當時市面上的相關書籍都不滿意,也幾乎沒有任何專家可以尋求幫助。在費盡千辛萬苦學完本課程之後,我決定寫本書,向大家介紹自己的經驗,但當時並沒有想清楚它應當面向什麼樣的讀者對像。多年之後,在我開始講授這門課程時卻發現,學生們提出的一些問題都已經在我的書中做了解答。這時,我纔知道自己做對了,這實際上是一本教科書。


    前 言



    一門不能改變思維方式的語言是不值得掌握的。



    —Larry Wall(Perl的發明者),Randal
    Schwartz






    早在開始講授本課程之前,我就決定寫一本關於UNIX的書。我對當時市面上的相關書籍都不滿意,也幾乎沒有任何專家可以尋求幫助。在費盡千辛萬苦學完本課程之後,我決定寫本書,向大家介紹自己的經驗,但當時並沒有想清楚它應當面向什麼樣的讀者對像。多年之後,在我開始講授這門課程時卻發現,學生們提出的一些問題都已經在我的書中做了解答。這時,我纔知道自己做對了,這實際上是一本教科書。



    UNIX經受住了時間的考驗,而且在今後一段時間內應當仍然如此。但在說起UNIX時,還是有很多人會說它“不夠友好”、“讓人撓頭”。初學者還是會因為它顯而易見的復雜性而備感打擊。即便是經驗豐富的計算機專業人士,也很難再樂於接受它的工作方式,不願意觸踫它的命令行、無數的選項和復雜的語法。今天的所有UNIX和Linux繫統都提供了圖形用戶界面,但命令行仍然是UNIX繫統的主干。



    UNIX令人激動之處在於它的許多功能都是隱藏的。UNIX並沒有把一切都擺在明面上;它鼓勵用戶去創造、去革新。對於UNIX愛好者來說,如何找出能夠完成一項復雜任務的命令組合或腳本,都是真正的挑戰。這就是UNIX,而且它好繼續保持這種風格。如果你欣賞這樣一句話——“任何瘋狂背後皆有章法可循”,那你也就上道了,這本書就是為你準備的。



    與眾不同



    我早接觸的計算機就是UNIX機,在UNIX繫統中摸爬滾打很長一段時間後,我認識到,妨礙理解UNIX的絆腳石並不是人們認為的那些。UNIX之所以不容易理解,並不是因為它太難了,而是因為作者們缺乏足夠的想像力,沒有為它換一種表現方式。例如,書中經常會給出一條命令的20個選項,而其中可能隻有一兩項是真正有用的。我在飽受挫折之後,決定自行編寫一本“真正”的UNIX書籍——一本知道用戶真正需要什麼的UNIX書籍,一本用戶願意隨身攜帶的UNIX書籍。



    現實示例 UNIX的概念很簡單,但也很抽像,為什麼要采用某一特定方式來處理某一特定功能,其原因往往不是那麼明顯。要掌握這一操作繫統,就需要全面理解這些概念。我確信已經足夠清晰地解釋了它的關鍵特性,既揭示了在設計時的考慮因素,也揭示了它們與現實世界的相關性。你會發現,本書中的許多例子都源於現實生活中的情景。



    用戶指南與程序員指南 UNIX用戶主要有兩類,一類用戶使用UNIX的原生工具;另一類用戶則使用shell腳本和UNIX繫統調用庫來開發工具。本書足夠詳細地討論了這兩方面的內容,又使篇幅保持在便於閱讀、攜帶的範圍內(在同類書籍中,可能隻有本書能做到這一點)。



    前11章為“用戶”服務,對於導論性的UNIX課程來說,這些內容就足夠了。“開發人員”是shell或繫統程序員,他們還得知道工作機理,例如在創建或鏈接一個文件時,目錄會受到什麼樣的影響。為他們著想,前面幾章包括了一些用於探究關鍵概念的特殊加框文字。這種安排應當不會對初學者造成影響,他們可以悄悄地忽略這些部分。第16~18章體現了UNIX的精華,要求繫統程序員必須閱讀這些章節。



    醒目的學習提示 教學提示是本書的一個突出特征。它們有各種不同的名稱,例如“注意”、“警告”和“提示”。我認為Linux是UNIX家庭中的一個重要成員,所以特別采用企鵝標記來突出顯示Linux特性。



    許多作者都是在單獨一章中討論每種shell,我不太贊同這種做法。我主要使用Bash
    shell來討論關鍵概念,然後再分別討論C shell、Korn shell、Bourne shell的不同之處。



    大量習題與練習 本書給出了大量問題,用來測驗讀者掌握的知識。其中有超過1/3是自測問題,其答案在附錄I中給出。這些問題都是面向初學者的,在繼續學習下一章之前,應當首先出色地回答這些問題。



    難度更大、範圍更廣的問題留在“習題”部分。其中有一部分的難度很大,可能需要花費一些時間進行求解。這些習題會鞏固(往往還會豐富)你的UNIX知識,所以不要忽視它們。這些問題的答案在本書網站上提供:http://www.mhhe.com/das。



    新增內容



    一些評論者似乎對本書第2版非常滿意,他們警告說,再做改進可能不會有“太大收效”。我在牢記這一點的同時,在這一版中進行了以下修改:



    ● vi/vim一章得以保留,而emacs一章則被壓縮,轉為附錄。為使初學者更輕松地過渡到vi,第3章介紹了pico編輯器。



    ● bc計算器實用程序在這一版中又回歸了,但隻是作為shell程序員的一個高效計算工具。



    ● 專門為討論C語言程序設計的基礎知識而增加了一章。盡管有些簡略,但有了這一章,就足以理解後面兩章的繫統程序設計內容了。



    ● 現在的第15章包括了流行的並發版本繫統(CVS),所有Linux繫統中都可以找到它。SCCS和RCS在這一版中繼續保有一席之地,但在下一版,至少會刪除它們中的一項。



    ● 由於GNU調試程序(gdb)優於dbx,所以這一版中已經將gdb收納在內,不過後者依然得以保留。



    這些變化使本書的篇幅稍有增加。盡管增加了對Linux和GNU工具的介紹,但本書的通用特性仍然保留下來;它沒有專門關注UNIX的任何具體分發版本,而是突出介紹了Solaris和Linux中的各種變型。



    組織結構



    這一版在邏輯上劃分為用戶部分和程序設計部分。UNIX基礎知識僅限於前11章,這部分內容在討論聯網工具時達到高潮。接下來的7章涵蓋了程序設計的相關資料,包括awk、shell程序設計、繫統程序設計和perl。



    UNIX簡介 第1章通過一個簡單的實踐練習揭示了UNIX的核心概念。接下來是UNIX的發展簡史及功能展示。這一章還向讀者介紹了kernel和shell,它們共同處理繫統的工作負載。在為開發可移植應用程序而構建框架的過程中,一些標準機構(例如POSIX和The
    Open Group)扮演著重要角色,學習本章之後將會了解這些機構發揮的作用。



    第2章介紹了UNIX命令行的結構。它還討論了使用man命令查詢聯機文檔的技巧。我們將學習使用電子郵件程序,改變密碼,並了解繫統中發生了什麼。我們可能會出錯,而且遲早會出錯,所以還要知道如何使用鍵盤進行糾正。



    文件 文件是UNIX的兩大支柱之一,接下來的三章將討論文件。第3章討論了繫統中各種類型的文件,以及處理這些文件的命令。我們將學習如何創建目錄、在目錄結構中導航定位、復制和刪除目錄中的文件。還將學習如何使用pico編輯器來編輯文件。UNIX還提供了許多壓縮實用工具,可以用來磁盤空間。



    文件擁有屬性(特性),第4章介紹了文件的主要屬性,特別是用ls
    -l命令顯示的屬性。要知道,文件和目錄面對攻擊都是大門洞開的,所以要學會如何通過管理它們的權限來提供保護。利用鏈接,以多個名稱來訪問同一文件。我們可能還會忘記文件的存放位置,所以需要熟悉find命令。



    一個人的工作效率還取決於他對編輯器功能的熟悉程度。第5章介紹了vi,它在任何工作環境下都是功能強大的文本編輯器之一。程序員使用這一編輯器的次數可能比其他任何人都多,所以本章中的大多數例子都采用程序代碼段。附錄D中對vi的功能進行了總結。



    shell和進程 現在需要理解一個非常重要的程序,我們總是和它打交道的,那就是shell。第6章介紹了shell的解釋功能,包括它字符。我們將學習使用通配符,用單個模式來匹配一組類似的文件名。使用重定向和管道來操控命令的輸入和輸出。shell也是一門編程語言,所以必須要等到第13章纔能完全理解它。



    第7章介紹了進程,它是UNIX繫統的另一支柱。進程與文件類似,也擁有屬性。這一章將幫助讀者理解如何用fork-exec機制來創建進程,學習控制進程,在前臺和後臺之間移動它們,還將學習如何通過發送信號來終止進程。



    UNIX
    shell為定制環境提供了很好的機會(第8章)。要理解和使用shell變量、創建命令別名。選擇一種提供所有這些功能的合適shell,並學習使用初始化腳本來保存對環境的修改。



    過濾器 接下來的兩章討論過濾器——這是UNIX工具包中的一些特殊命令,負責所有文本處理任務。第9章介紹了一些簡單的過濾器,並說明它們在相互連接時,如何為有效。專門有一個示例小節,其中給出了現實生活中的三個應用,它們都是在管道中使用這些過濾器加以解決的。



    第10章討論了兩種功能強大的過濾器——grep和sed,它們共同處理所有的模式查找、編輯和替換操作。這裡將介紹正則表達式,它是一種精心設計的模式匹配機制,通常會大幅簡化查找與替換任務。過濾器內容之後有一章討論聯網工具(第11章),本書部分到此結束。



    程序設計 後面的7章討論了UNIX的大多數程序設計功能。在第12章中,awk命令表現得像是一個過濾器和一門程序設計語言。掌握了awk及其標準程序設計構造(例如if、for和while構造),應當就為shell程序設計、perl和C語言程序設計打好了基礎。



    後,我們會將所有命令和管道放到shell腳本中。利用第13章討論的shell程序設計功能,開發交互式與非交互式腳本。學習設計一種腳本,在以不同名字調用這種腳本時,其行為會發生相應變化。對shell程序員來說,本章給出的三個示例腳本是內容。



    下面4章與C程序設計有著直接或間接的關繫。第14章介紹了C語言程序設計的入門知識,這是這一版新增的一章。接下來是程序開發工具(第15章)。利用make實用工具和一種功能強大的調試程序(gdb)來管理和調試程序。另外,還要學習使用SCCS、RCS和CVS來維護一個程序的多個版本。



    本書有兩章介紹了繫統調用在C語言程序設計環境中的應用,第16章是其中的章,這一章討論了與文件和I/O相關的繫統調用。編寫一些程序,執行面向目錄的功能,例如列出文件等,還要學習如何提取和處理存儲在inode中的文件屬性。



    第17章討論了與進程有關的繫統調用。學習使用繫統調用中的fork和exec繫列來創建進程。一旦理解了內核如何在內存中為已打開文數據,就能實現重定向和管道,以及如何在程序中處理信號。



    我們在第18章遇到了perl,它是UNIX世界中功能強大的過濾器和腳本設計語言。大多數UNIX概念都內嵌在perl的設計中,許多UNIX用戶離開它就什麼也做不了,原因就在於此。盡管我們無法在單獨一章中充分欣賞perl,但第18章作為一個開端,應當是很有用的。



    後,每個用戶都必須了解與繫統管理有關的例程任務,第19章討論了這一領域的基本問題。理解繫統提供的重要安全功能。熟悉與繫統啟動與關閉相關的活動,以及如何加載文件繫統,並檢查一致性。還要學習如何進行基本的備份操作。



    致謝



    本書的每一版都使我有機會與新的團隊進行合作。本項目的主要推動者是Raghu Srinivasan(全球出版商),同他和Melissa Leick(項目經理)的合作非常愉快。他們在McGraw-Hill指導團隊的方式給我留下了深刻印像。我還必須感謝Brenda
    Rolwes(設計協調者)和Curt Reynolds(他負責營銷安排)。還要特別感謝Melinda Bilecki(策劃編輯),她一如既往地機敏。她是一位從本書構思階段就一直參與的人,這種連續性使我受益良多。



    還必須感謝審稿者,他們對於本版形式、內容的調整發揮了重要作用:



    Ivan Bajic,聖地亞哥州立大學



    Bruce Elenbogen,密西根大學迪爾本分校



    Ziad Kobti,加拿大溫莎大學



    Galina Piatnitskaia,密蘇裡大學聖路易斯分校



    Paul Piwowarski,肯塔基大學



    Darren Provine,羅文大學



    Quazi M. Rahman,加拿大西安大略大學



    我要向Deepti Narwat表示誠摯的謝意,他是負責Cenveo
    Publisher



     
    網友評論  我們期待著您對此商品發表評論
     
    相關商品
    在線留言 商品價格為新臺幣
    關於我們 送貨時間 安全付款 會員登入 加入會員 我的帳戶 網站聯盟
    DVD 連續劇 Copyright © 2024, Digital 了得網 Co., Ltd.
    返回頂部