Linux命令行和shell脚本编程宝典

Linux命令行和shell脚本编程宝典
8.3
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者: [美]
出版社: 人民邮电出版社
2009-06
版次: 1
ISBN: 9787115197771
定价: 69.00
装帧: 平装
开本: 16开
纸张: 胶版纸
页数: 494页
字数: 982千字
正文语种: 简体中文
原版书名: Linux Command Line and Shell Scripting Bible
丛书: 宝典丛书
  •   在Linux系统中,命令和shell脚本是非常重要的内容,它们的功能非常强大,使用它们可以完成各种操作。《Linux命令行和sheell脚本编程宝典》分为5部分。第1部分介绍Linuxshell的基础知识;第2部分介绍shell脚本;第3部分介绍shell脚本编程的高级内容;第4部分介绍如何使用Linux环境中的各种shell编写shell脚本;第5部分演示如何在实际情况中使用shell脚本。《Linux命令行和sheell脚本编程宝典》非常全面地介绍了Linux命令行和shell命令,并且提供了很多实践教程和实例应用程序信息,为学习的内容提供了相关环境,是Linux的爱好者以及Linux系统管理员的首选。   RichardBlum,作为一名系统和网络管理员,已经在IT界经历了19年的风风雨雨。在此期间,他管理过Unix、Linux、Novell和Microsoft服务器,曾帮助设计和维护使用Cisco交换机和路由器的大型网络,共涉及3500多名用户。他使用Linux服务器和shell脚本执行自动网络监控,并可以在所有Unixshell环境中编写shell脚本。
      Rich拥有普渡大学电子工程学学士学位,并拥有管理信息系统方面的理学硕士学位。他编写过好几本Linux图书,包括《SendmailforLinux》、《Runningqmail》、《Postfix》、《OpenSourceE.MailSecurity》、《NetworkPerformanceOpenSourceToolkit》和ProfessionalAssemblyLanguageProgramming》。他还是《ProfessionalLinuxProgramming》和《LinuxForDummies》第8版的合著者。 第1部分Linux命令行
    第1章Linuxshell入门3
    1.1什么是Linux3
    1.1.1深入研究Linux内核4
    1.1.2GNU实用程序9
    1.1.3Linux桌面环境10
    1.2Linux发行版13
    1.2.1核心Linux发行版13
    1.2.2特定Linux发行版14
    1.2.3LinuxLiveCD14
    1.3小结15
    第2章了解shell17
    2.1终端模拟17
    2.1.1图形功能18
    2.1.2键盘20
    2.2terminfo数据库21
    2.3Linux控制台23
    2.4xterm终端24
    2.4.1命令行参数24
    2.4.2xterm主菜单25
    2.4.3VT选项菜单26
    2.4.4VT字体菜单28
    2.5Konsole终端29
    2.5.1命令行参数29
    2.5.2会话30
    2.5.3菜单栏31
    2.6GNOME终端34
    2.6.1命令行参数34
    2.6.2选项卡35
    2.6.3菜单栏35
    2.7小结37
    第3章基本的bashshell命令38
    3.1启动shell38
    3.2shell提示符39
    3.3bash手册40
    3.4文件系统导航41
    3.4.1Linux文件系统41
    3.4.2浏览目录43
    3.5文件和目录列表44
    3.5.1基本列表44
    3.5.2修改显示的信息45
    3.5.3完整的参数列表46
    3.5.4过滤列表输出48
    3.6文件处理48
    3.6.1创建文件48
    3.6.2复制文件49
    3.6.3链接文件50
    3.6.4重命名文件51
    3.6.5删除文件52
    3.7目录处理53
    3.7.1创建目录53
    3.7.2删除目录53
    3.8查看文件内容54
    3.8.1查看文件统计数据54
    3.8.2查看文件类型54
    3.8.3查看整个文件55
    3.8.4查看部分文件57
    3.9小结58
    第4章更多bashshell命令59
    4.1监控程序59
    4.1.1进程查看59
    4.1.2实时进程监控64
    4.1.3停止进程66
    4.2监控磁盘空间67
    4.2.1挂载介质68
    4.2.2使用df命令70
    4.2.3使用du命令71
    4.3操作数据文件71
    4.3.1数据排序72
    4.3.2搜索数据74
    4.3.3压缩数据75
    4.3.4归档数据78
    4.4小结79
    第5章使用Linux环境变量80
    5.1什么是环境变量80
    5.1.1全局环境变量80
    5.1.2本地环境变量81
    5.2设置环境变量83
    5.2.1设置本地环境变量83
    5.2.2设置全局环境变量84
    5.3移除环境变量84
    5.4默认的shell环境变量85
    5.5设置PATH环境变量87
    5.6定位系统环境变量88
    5.6.1登录shell88
    5.6.2交互式shell90
    5.6.3非交互式shell92
    5.7变量数组92
    5.8使用命令别名93
    5.9小结94
    第6章理解Linux文件权限96
    6.1Linux安全性96
    6.1.1/etc/passwd文件96
    6.1.2/etc/shadow文件98
    6.1.3添加新用户98
    6.1.4删除用户100
    6.1.5修改用户100
    6.2使用Linux用户组102
    6.2.1/etc/group文件103
    6.2.2创建新用户组103
    6.2.3修改用户组104
    6.3解码文件权限104
    6.3.1使用文件权限符号105
    6.3.2默认文件权限105
    6.4修改安全设置107
    6.4.1修改权限107
    6.4.2修改所有者108
    6.5共享文件108
    6.6小结109
    第7章使用编辑器111
    7.1vim编辑器111
    7.1.1vim基本用法111
    7.1.2编辑数据113
    7.1.3复制和粘贴113
    7.1.4搜索和替换114
    7.2emacs编辑器114
    7.2.1在控制台中使用emacs114
    7.2.2在XWindows中使用emacs118
    7.3KDE系列编辑器119
    7.3.1KWrite编辑器119
    7.3.2Kate编辑器121
    7.4GNOME编辑器124
    7.4.1启动gedit124
    7.4.2基本gedit特性125
    7.4.3设置首选项125
    7.5小结128

    第2部分shell脚本的基础知识
    第8章基本脚本编译131
    8.1使用多条命令131
    8.2创建脚本文件131
    8.3显示消息133
    8.4使用变量134
    8.4.1环境变量134
    8.4.2用户变量135
    8.4.3反引号136
    8.5重定向输入输出137
    8.5.1输出重定向137
    8.5.2输入重定向137
    8.6管道138
    8.7数学计算140
    8.7.1expr命令140
    8.7.2使用括号141
    8.7.3浮点解决方案142
    8.8退出脚本145
    8.8.1核对退出状态145
    8.8.2退出命令146
    8.9小结147
    第9章使用结构化命令148
    9.1使用if-then语句148
    9.2if-then-else语句150
    9.3嵌套if语句150
    9.4test命令151
    9.4.1数值比较151
    9.4.2字符串比较152
    9.4.3文件比较155
    9.5复合条件检查161
    9.6if-then的高级特征161
    9.6.1使用双圆括号162
    9.6.2使用双方括号162
    9.7case命令163
    9.8小结164
    第10章更多结构化命令165
    10.1for命令165
    10.1.1读取列表中的值165
    10.1.2读取列表中的复杂值166
    10.1.3从变量读取列表168
    10.1.4读取命令中的值168
    10.1.5改变字段分隔符169
    10.1.6使用通配符读取目录170
    10.2C式的for命令171
    10.2.1C语言中的for命令171
    10.2.2使用多个变量172
    10.3while命令173
    10.3.1while的基本格式173
    10.3.2使用多条测试命令174
    10.4until命令175
    10.5嵌套循环176
    10.6文件数据的循环178
    10.7控制循环178
    10.7.1break命令179
    10.7.2continue命令181
    10.8处理循环的输出183
    10.9小结184
    第11章处理用户输入185
    11.1命令行参数185
    11.1.1读取参数185
    11.1.2读取程序名称187
    11.1.3测试参数188
    11.2特殊的参数变量188
    11.2.1参数计数188
    11.2.2获取所有数据190
    11.3移位190
    11.4处理选项191
    11.4.1找出选项191
    11.4.2使用getopt命令194
    11.4.3更高级的getopts命令196
    11.5标准化选项197
    11.6获取用户输入198
    11.6.1基本读取198
    11.6.2计时199
    11.6.3默读200
    11.6.4读取文件200
    11.7小结201
    第12章显示数据202
    12.1了解输入和输出202
    12.1.1标准文件描述符202
    12.1.2重定向错误204
    12.2在脚本中重定向输出205
    12.2.1临时重定向205
    12.2.2永久重定向206
    12.3在脚本中重定向输入207
    12.4创建自己的重定向207
    12.4.1创建输出文件描述符207
    12.4.2重定向文件描述符208
    12.4.3创建输入文件描述符208
    12.4.4创建读取/写入文件描述符209
    12.4.5关闭文件描述符210
    12.5列出开放文件描述符210
    12.6禁止命令输出212
    12.7使用临时文件212
    12.7.1创建本地临时文件213
    12.7.2在/temp中创建临时文件213
    12.7.3创建临时目录214
    12.8记录消息215
    12.9小结216
    第13章脚本控制217
    13.1处理信号217
    13.1.1Linux信号回顾217
    13.1.2生成信号218
    13.1.3捕获信号219
    13.1.4捕获脚本退出220
    13.1.5移除捕获220
    13.2以后台模式运行脚本221
    13.2.1以后台模式运行221
    13.2.2运行多个后台作业222
    13.2.3退出终端222
    13.3在不使用控制台的情况下运行脚本222
    13.4作业控制223
    13.4.1查看作业223
    13.4.2重新启动停止的作业225
    13.5变得更好225
    13.5.1nice命令226
    13.5.2renice命令226
    13.6准确无误地运行227
    13.6.1使用at命令调度作业227
    13.6.2使用batch命令229
    13.6.3调度定期脚本229
    13.7从头开始230
    13.7.1在启动时启动脚本231
    13.7.2随新shell一起启动232
    13.8小结232

    第3部分高级shell脚本编程
    第14章创建函数235
    14.1基本脚本函数235
    14.1.1创建函数235
    14.1.2使用函数236
    14.2返回值237
    14.2.1默认退出状态237
    14.2.2使用return命令238
    14.2.3使用函数输出239
    14.3在函数中使用变量239
    14.3.1向函数传递参数240
    14.3.2在函数中处理变量241
    14.4数组变量与函数243
    14.4.1向函数传递数组243
    14.4.2从函数返回数组244
    14.5函数递归245
    14.6创建库246
    14.7在命令行中使用函数247
    14.7.1在命令行创建函数247
    14.7.2在.bashrc文件中定义函数248
    14.8小结249
    第15章在脚本中添加颜色250
    15.1创建文本菜单250
    15.1.1创建菜单布局250
    15.1.2创建菜单函数251
    15.1.3添加菜单逻辑252
    15.1.4将其全部组合在一起252
    15.1.5使用select命令253
    15.2添加颜色254
    15.2.1ANSI转义码254
    15.2.2显示ANSI转义码255
    15.2.3在脚本中使用颜色256
    15.3制作窗口257
    15.3.1dialog软件包257
    15.3.2dialog选项261
    15.3.3在脚本中使用dialog命令263
    15.4获取图形265
    15.4.1KDE环境265
    15.4.2GNOME环境267
    15.5小结270
    第16章sed和gawk介绍271
    16.1文本处理271
    16.1.1sed编辑器271
    16.1.2gawk程序273
    16.2sed编辑器基础知识278
    16.2.1更多替换选项278
    16.2.2使用地址279
    16.2.3删除行281
    16.2.4插入和附加文本282
    16.2.5更改行283
    16.2.6变换命令284
    16.2.7打印命令温习284
    16.2.8将文件用于sed286
    16.3小结288
    第17章正则表达式289
    17.1正则表达式是什么289
    17.1.1正则表达式的定义289
    17.1.2正则表达式的类型290
    17.2定义BRE模式290
    17.2.1纯文本290
    17.2.2特殊字符291
    17.2.3定位符292
    17.2.4点字符293
    17.2.5字符类294
    17.2.6否定字符类295
    17.2.7使用范围296
    17.2.8特殊字符类296
    17.2.9星号297
    17.3扩展的正则表达式298
    17.3.1问号298
    17.3.2加号299
    17.3.3使用大括号299
    17.3.4管道符号300
    17.3.5将表达式分组300
    17.4正则表达式实战301
    17.4.1计算目录文件301
    17.4.2验证电话号码302
    17.4.3解析电子邮件地址303
    17.5小结304
    第18章高级sed编程306
    18.1多行命令306
    18.1.1next命令306
    18.1.2多行删除命令309
    18.1.3多行打印命令310
    18.2保留空间310
    18.3否定命令311
    18.4更改命令流313
    18.4.1分支313
    18.4.2测试314
    18.5模式替换315
    18.5.1与号315
    18.5.2替换个别单词315
    18.6在脚本中使用sed316
    18.6.1使用包装器316
    18.6.2重定向sed输出317
    18.7创建sed工具317
    18.7.1双倍行距318
    18.7.2对可能有空行的文件使用双倍行距318
    18.7.3对文件中的行记数319
    18.7.4打印最后几行319
    18.7.5删除行320
    18.7.6删除HTML标记322
    18.8小结323
    第19章高级gawk编程324
    19.1使用变量324
    19.1.1内置变量324
    19.1.2用户定义的变量328
    19.2使用数组329
    19.2.1定义数组变量329
    19.2.2在数组变量中递归330
    19.2.3删除数组变量330
    19.3使用模式331
    19.3.1正则表达式331
    19.3.2匹配操作符331
    19.3.3数学表达式332
    19.4结构化命令332
    19.4.1if语句333
    19.4.2while语句334
    19.4.3do-while语句335
    19.4.4for语句335
    19.5格式化打印335
    19.6内置函数337
    19.6.1数学函数337
    19.6.2字符串函数338
    19.6.3时间函数339
    19.7用户定义的函数340
    19.7.1定义函数340
    19.7.2使用自己的函数340
    19.7.3创建函数库341
    19.8小结341

    第4部分可选的Linuxshell
    第20章ashshell345
    20.1什么是ashshell345
    20.2原始ashshell346
    20.2.1原始ash命令行参数346
    20.2.2原始ash内置命令347
    20.2.3ashshell文件349
    20.3dashshell349
    20.3.1dash命令行参数349
    20.3.2dash环境变量350
    20.3.3dash内置命令352
    20.4在dash中编写脚本355
    20.4.1创建ash和dash脚本355
    20.4.2失效的特性355
    20.5小结359
    第21章tcshshell360
    21.1什么是tcshshell360
    21.2tcashshell的组成部分360
    21.2.1tcsh命令行参数361
    21.2.2tcsh文件361
    21.2.3tcsh登录文件362
    21.2.4shell启动文件362
    21.2.5退出文件363
    21.2.6tcsh环境变量364
    21.2.7shell变量364
    21.2.8环境变量367
    21.2.9在tcsh中设置变量369
    21.2.10使用set命令369
    21.2.11使用setenv命令369
    21.2.12tcsh内置命令370
    21.3在tcsh中编写脚本372
    21.3.1处理变量372
    21.3.2数组变量372
    21.3.3处理数学运算372
    21.3.4结构化命令373
    21.3.5if语句373
    21.3.6foreach语句375
    21.3.7while语句375
    21.3.8switch命令375
    21.4小结376
    第22章Kornshell378
    22.1Kornshell的历史378
    22.2ksh93shell的组成部分378
    22.2.1命令行参数379
    22.2.2默认文件380
    22.2.3环境变量380
    22.2.4内置命令385
    22.3在ksh93shell中编写脚本387
    22.3.1数学运算387
    22.3.2结构化命令389
    22.3.3命令重定向391
    22.3.4规程函数391
    22.4小结392
    第23章zshshell393
    23.1zshshell的历史393
    23.2zshshell的组成部分393
    23.2.1shell选项394
    23.2.2zshshell文件396
    23.2.3环境变量398
    23.2.4内置命令401
    23.3使用zsh编写脚本405
    23.3.1数学运算405
    23.3.2结构化命令406
    23.3.3函数406
    23.4小结408

    第5部分高级主题
    第24章使用数据库411
    24.1MySQL数据库411
    24.1.1安装MySQL411
    24.1.2完成MySQL配置413
    24.1.3MySQL客户端接口414
    24.1.4创建MySQL数据库对象417
    24.2PostgreSQL数据库419
    24.2.1安装PostgreSQL419
    24.2.2PostgreSQL命令接口421
    24.2.3创建PostgreSQL数据库对象422
    24.3处理表424
    24.3.1创建表424
    24.3.2插入和删除数据425
    24.3.3查询数据426
    24.4在脚本中使用数据库427
    24.4.1连接到数据库427
    24.4.2向服务器发送命令428
    24.4.3格式化数据431
    24.5小结432
    第25章使用Web433
    25.1Lynx程序433
    25.1.1安装Lynx434
    25.1.2Lynx命令行434
    25.1.3Lynx配置文件438
    25.1.4Lynx环境变量439
    25.1.5从Lynx捕获数据439
    25.2cURL程序441
    25.2.1安装cURL441
    25.2.2cURL命令行442
    25.2.3研究curl444
    25.3使用zsh连接网络445
    25.3.1TCP模块445
    25.3.2客户端/服务器模型446
    25.3.3使用zsh进行客户端/服务器编程446
    25.4小结449
    第26章使用电子邮件450
    26.1Linux电子邮件基础知识450
    26.1.1Linux中的电子邮件450
    26.1.2邮件传输代理451
    26.1.3邮件分发代理452
    26.1.4邮件用户代理452
    26.2设置服务器454
    26.2.1sendmail455
    26.2.2Postfix456
    26.3使用Mailx发送消息459
    26.4Mutt程序461
    26.4.1安装Mutt461
    26.4.2Mutt命令行462
    26.4.3使用Mutt462
    26.5小结463
    第27章管理员使用的shell脚本465
    27.1监视系统统计信息465
    27.1.1监视磁盘空闲空间465
    27.1.2谁在霸占磁盘资源467
    27.1.3监视CPU和内存使用情况469
    27.2执行备份474
    27.2.1归档数据文件474
    27.2.2脱机存储备份文件477
    27.3小结478
    附录Abash命令快速指南479
    A.1内置命令479
    A.2bash命令480
    A.3环境变量481
    附录Bsed和gawk快速指南484
    B.1sed编辑器484
    B.1.1启动sed编辑器484
    B.1.2sed命令484
    B.2gawk程序487
    B.2.1gawk命令格式487
    B.2.2使用gawk487
    B.2.3gawk变量488
    B.2.4gawk程序功能489
    附录Cshell版本比较491
    C.1变量491
    C.1.1环境变量491
    C.1.2用户定义的变量491
    C.1.3数组变量492
    C.2结构化命令492
    C.2.1if-then、while和until语句492
    C.2.2for语句493
    C.3数学计算493
  • 内容简介:
      在Linux系统中,命令和shell脚本是非常重要的内容,它们的功能非常强大,使用它们可以完成各种操作。《Linux命令行和sheell脚本编程宝典》分为5部分。第1部分介绍Linuxshell的基础知识;第2部分介绍shell脚本;第3部分介绍shell脚本编程的高级内容;第4部分介绍如何使用Linux环境中的各种shell编写shell脚本;第5部分演示如何在实际情况中使用shell脚本。《Linux命令行和sheell脚本编程宝典》非常全面地介绍了Linux命令行和shell命令,并且提供了很多实践教程和实例应用程序信息,为学习的内容提供了相关环境,是Linux的爱好者以及Linux系统管理员的首选。
  • 作者简介:
      RichardBlum,作为一名系统和网络管理员,已经在IT界经历了19年的风风雨雨。在此期间,他管理过Unix、Linux、Novell和Microsoft服务器,曾帮助设计和维护使用Cisco交换机和路由器的大型网络,共涉及3500多名用户。他使用Linux服务器和shell脚本执行自动网络监控,并可以在所有Unixshell环境中编写shell脚本。
      Rich拥有普渡大学电子工程学学士学位,并拥有管理信息系统方面的理学硕士学位。他编写过好几本Linux图书,包括《SendmailforLinux》、《Runningqmail》、《Postfix》、《OpenSourceE.MailSecurity》、《NetworkPerformanceOpenSourceToolkit》和ProfessionalAssemblyLanguageProgramming》。他还是《ProfessionalLinuxProgramming》和《LinuxForDummies》第8版的合著者。
  • 目录:
    第1部分Linux命令行
    第1章Linuxshell入门3
    1.1什么是Linux3
    1.1.1深入研究Linux内核4
    1.1.2GNU实用程序9
    1.1.3Linux桌面环境10
    1.2Linux发行版13
    1.2.1核心Linux发行版13
    1.2.2特定Linux发行版14
    1.2.3LinuxLiveCD14
    1.3小结15
    第2章了解shell17
    2.1终端模拟17
    2.1.1图形功能18
    2.1.2键盘20
    2.2terminfo数据库21
    2.3Linux控制台23
    2.4xterm终端24
    2.4.1命令行参数24
    2.4.2xterm主菜单25
    2.4.3VT选项菜单26
    2.4.4VT字体菜单28
    2.5Konsole终端29
    2.5.1命令行参数29
    2.5.2会话30
    2.5.3菜单栏31
    2.6GNOME终端34
    2.6.1命令行参数34
    2.6.2选项卡35
    2.6.3菜单栏35
    2.7小结37
    第3章基本的bashshell命令38
    3.1启动shell38
    3.2shell提示符39
    3.3bash手册40
    3.4文件系统导航41
    3.4.1Linux文件系统41
    3.4.2浏览目录43
    3.5文件和目录列表44
    3.5.1基本列表44
    3.5.2修改显示的信息45
    3.5.3完整的参数列表46
    3.5.4过滤列表输出48
    3.6文件处理48
    3.6.1创建文件48
    3.6.2复制文件49
    3.6.3链接文件50
    3.6.4重命名文件51
    3.6.5删除文件52
    3.7目录处理53
    3.7.1创建目录53
    3.7.2删除目录53
    3.8查看文件内容54
    3.8.1查看文件统计数据54
    3.8.2查看文件类型54
    3.8.3查看整个文件55
    3.8.4查看部分文件57
    3.9小结58
    第4章更多bashshell命令59
    4.1监控程序59
    4.1.1进程查看59
    4.1.2实时进程监控64
    4.1.3停止进程66
    4.2监控磁盘空间67
    4.2.1挂载介质68
    4.2.2使用df命令70
    4.2.3使用du命令71
    4.3操作数据文件71
    4.3.1数据排序72
    4.3.2搜索数据74
    4.3.3压缩数据75
    4.3.4归档数据78
    4.4小结79
    第5章使用Linux环境变量80
    5.1什么是环境变量80
    5.1.1全局环境变量80
    5.1.2本地环境变量81
    5.2设置环境变量83
    5.2.1设置本地环境变量83
    5.2.2设置全局环境变量84
    5.3移除环境变量84
    5.4默认的shell环境变量85
    5.5设置PATH环境变量87
    5.6定位系统环境变量88
    5.6.1登录shell88
    5.6.2交互式shell90
    5.6.3非交互式shell92
    5.7变量数组92
    5.8使用命令别名93
    5.9小结94
    第6章理解Linux文件权限96
    6.1Linux安全性96
    6.1.1/etc/passwd文件96
    6.1.2/etc/shadow文件98
    6.1.3添加新用户98
    6.1.4删除用户100
    6.1.5修改用户100
    6.2使用Linux用户组102
    6.2.1/etc/group文件103
    6.2.2创建新用户组103
    6.2.3修改用户组104
    6.3解码文件权限104
    6.3.1使用文件权限符号105
    6.3.2默认文件权限105
    6.4修改安全设置107
    6.4.1修改权限107
    6.4.2修改所有者108
    6.5共享文件108
    6.6小结109
    第7章使用编辑器111
    7.1vim编辑器111
    7.1.1vim基本用法111
    7.1.2编辑数据113
    7.1.3复制和粘贴113
    7.1.4搜索和替换114
    7.2emacs编辑器114
    7.2.1在控制台中使用emacs114
    7.2.2在XWindows中使用emacs118
    7.3KDE系列编辑器119
    7.3.1KWrite编辑器119
    7.3.2Kate编辑器121
    7.4GNOME编辑器124
    7.4.1启动gedit124
    7.4.2基本gedit特性125
    7.4.3设置首选项125
    7.5小结128

    第2部分shell脚本的基础知识
    第8章基本脚本编译131
    8.1使用多条命令131
    8.2创建脚本文件131
    8.3显示消息133
    8.4使用变量134
    8.4.1环境变量134
    8.4.2用户变量135
    8.4.3反引号136
    8.5重定向输入输出137
    8.5.1输出重定向137
    8.5.2输入重定向137
    8.6管道138
    8.7数学计算140
    8.7.1expr命令140
    8.7.2使用括号141
    8.7.3浮点解决方案142
    8.8退出脚本145
    8.8.1核对退出状态145
    8.8.2退出命令146
    8.9小结147
    第9章使用结构化命令148
    9.1使用if-then语句148
    9.2if-then-else语句150
    9.3嵌套if语句150
    9.4test命令151
    9.4.1数值比较151
    9.4.2字符串比较152
    9.4.3文件比较155
    9.5复合条件检查161
    9.6if-then的高级特征161
    9.6.1使用双圆括号162
    9.6.2使用双方括号162
    9.7case命令163
    9.8小结164
    第10章更多结构化命令165
    10.1for命令165
    10.1.1读取列表中的值165
    10.1.2读取列表中的复杂值166
    10.1.3从变量读取列表168
    10.1.4读取命令中的值168
    10.1.5改变字段分隔符169
    10.1.6使用通配符读取目录170
    10.2C式的for命令171
    10.2.1C语言中的for命令171
    10.2.2使用多个变量172
    10.3while命令173
    10.3.1while的基本格式173
    10.3.2使用多条测试命令174
    10.4until命令175
    10.5嵌套循环176
    10.6文件数据的循环178
    10.7控制循环178
    10.7.1break命令179
    10.7.2continue命令181
    10.8处理循环的输出183
    10.9小结184
    第11章处理用户输入185
    11.1命令行参数185
    11.1.1读取参数185
    11.1.2读取程序名称187
    11.1.3测试参数188
    11.2特殊的参数变量188
    11.2.1参数计数188
    11.2.2获取所有数据190
    11.3移位190
    11.4处理选项191
    11.4.1找出选项191
    11.4.2使用getopt命令194
    11.4.3更高级的getopts命令196
    11.5标准化选项197
    11.6获取用户输入198
    11.6.1基本读取198
    11.6.2计时199
    11.6.3默读200
    11.6.4读取文件200
    11.7小结201
    第12章显示数据202
    12.1了解输入和输出202
    12.1.1标准文件描述符202
    12.1.2重定向错误204
    12.2在脚本中重定向输出205
    12.2.1临时重定向205
    12.2.2永久重定向206
    12.3在脚本中重定向输入207
    12.4创建自己的重定向207
    12.4.1创建输出文件描述符207
    12.4.2重定向文件描述符208
    12.4.3创建输入文件描述符208
    12.4.4创建读取/写入文件描述符209
    12.4.5关闭文件描述符210
    12.5列出开放文件描述符210
    12.6禁止命令输出212
    12.7使用临时文件212
    12.7.1创建本地临时文件213
    12.7.2在/temp中创建临时文件213
    12.7.3创建临时目录214
    12.8记录消息215
    12.9小结216
    第13章脚本控制217
    13.1处理信号217
    13.1.1Linux信号回顾217
    13.1.2生成信号218
    13.1.3捕获信号219
    13.1.4捕获脚本退出220
    13.1.5移除捕获220
    13.2以后台模式运行脚本221
    13.2.1以后台模式运行221
    13.2.2运行多个后台作业222
    13.2.3退出终端222
    13.3在不使用控制台的情况下运行脚本222
    13.4作业控制223
    13.4.1查看作业223
    13.4.2重新启动停止的作业225
    13.5变得更好225
    13.5.1nice命令226
    13.5.2renice命令226
    13.6准确无误地运行227
    13.6.1使用at命令调度作业227
    13.6.2使用batch命令229
    13.6.3调度定期脚本229
    13.7从头开始230
    13.7.1在启动时启动脚本231
    13.7.2随新shell一起启动232
    13.8小结232

    第3部分高级shell脚本编程
    第14章创建函数235
    14.1基本脚本函数235
    14.1.1创建函数235
    14.1.2使用函数236
    14.2返回值237
    14.2.1默认退出状态237
    14.2.2使用return命令238
    14.2.3使用函数输出239
    14.3在函数中使用变量239
    14.3.1向函数传递参数240
    14.3.2在函数中处理变量241
    14.4数组变量与函数243
    14.4.1向函数传递数组243
    14.4.2从函数返回数组244
    14.5函数递归245
    14.6创建库246
    14.7在命令行中使用函数247
    14.7.1在命令行创建函数247
    14.7.2在.bashrc文件中定义函数248
    14.8小结249
    第15章在脚本中添加颜色250
    15.1创建文本菜单250
    15.1.1创建菜单布局250
    15.1.2创建菜单函数251
    15.1.3添加菜单逻辑252
    15.1.4将其全部组合在一起252
    15.1.5使用select命令253
    15.2添加颜色254
    15.2.1ANSI转义码254
    15.2.2显示ANSI转义码255
    15.2.3在脚本中使用颜色256
    15.3制作窗口257
    15.3.1dialog软件包257
    15.3.2dialog选项261
    15.3.3在脚本中使用dialog命令263
    15.4获取图形265
    15.4.1KDE环境265
    15.4.2GNOME环境267
    15.5小结270
    第16章sed和gawk介绍271
    16.1文本处理271
    16.1.1sed编辑器271
    16.1.2gawk程序273
    16.2sed编辑器基础知识278
    16.2.1更多替换选项278
    16.2.2使用地址279
    16.2.3删除行281
    16.2.4插入和附加文本282
    16.2.5更改行283
    16.2.6变换命令284
    16.2.7打印命令温习284
    16.2.8将文件用于sed286
    16.3小结288
    第17章正则表达式289
    17.1正则表达式是什么289
    17.1.1正则表达式的定义289
    17.1.2正则表达式的类型290
    17.2定义BRE模式290
    17.2.1纯文本290
    17.2.2特殊字符291
    17.2.3定位符292
    17.2.4点字符293
    17.2.5字符类294
    17.2.6否定字符类295
    17.2.7使用范围296
    17.2.8特殊字符类296
    17.2.9星号297
    17.3扩展的正则表达式298
    17.3.1问号298
    17.3.2加号299
    17.3.3使用大括号299
    17.3.4管道符号300
    17.3.5将表达式分组300
    17.4正则表达式实战301
    17.4.1计算目录文件301
    17.4.2验证电话号码302
    17.4.3解析电子邮件地址303
    17.5小结304
    第18章高级sed编程306
    18.1多行命令306
    18.1.1next命令306
    18.1.2多行删除命令309
    18.1.3多行打印命令310
    18.2保留空间310
    18.3否定命令311
    18.4更改命令流313
    18.4.1分支313
    18.4.2测试314
    18.5模式替换315
    18.5.1与号315
    18.5.2替换个别单词315
    18.6在脚本中使用sed316
    18.6.1使用包装器316
    18.6.2重定向sed输出317
    18.7创建sed工具317
    18.7.1双倍行距318
    18.7.2对可能有空行的文件使用双倍行距318
    18.7.3对文件中的行记数319
    18.7.4打印最后几行319
    18.7.5删除行320
    18.7.6删除HTML标记322
    18.8小结323
    第19章高级gawk编程324
    19.1使用变量324
    19.1.1内置变量324
    19.1.2用户定义的变量328
    19.2使用数组329
    19.2.1定义数组变量329
    19.2.2在数组变量中递归330
    19.2.3删除数组变量330
    19.3使用模式331
    19.3.1正则表达式331
    19.3.2匹配操作符331
    19.3.3数学表达式332
    19.4结构化命令332
    19.4.1if语句333
    19.4.2while语句334
    19.4.3do-while语句335
    19.4.4for语句335
    19.5格式化打印335
    19.6内置函数337
    19.6.1数学函数337
    19.6.2字符串函数338
    19.6.3时间函数339
    19.7用户定义的函数340
    19.7.1定义函数340
    19.7.2使用自己的函数340
    19.7.3创建函数库341
    19.8小结341

    第4部分可选的Linuxshell
    第20章ashshell345
    20.1什么是ashshell345
    20.2原始ashshell346
    20.2.1原始ash命令行参数346
    20.2.2原始ash内置命令347
    20.2.3ashshell文件349
    20.3dashshell349
    20.3.1dash命令行参数349
    20.3.2dash环境变量350
    20.3.3dash内置命令352
    20.4在dash中编写脚本355
    20.4.1创建ash和dash脚本355
    20.4.2失效的特性355
    20.5小结359
    第21章tcshshell360
    21.1什么是tcshshell360
    21.2tcashshell的组成部分360
    21.2.1tcsh命令行参数361
    21.2.2tcsh文件361
    21.2.3tcsh登录文件362
    21.2.4shell启动文件362
    21.2.5退出文件363
    21.2.6tcsh环境变量364
    21.2.7shell变量364
    21.2.8环境变量367
    21.2.9在tcsh中设置变量369
    21.2.10使用set命令369
    21.2.11使用setenv命令369
    21.2.12tcsh内置命令370
    21.3在tcsh中编写脚本372
    21.3.1处理变量372
    21.3.2数组变量372
    21.3.3处理数学运算372
    21.3.4结构化命令373
    21.3.5if语句373
    21.3.6foreach语句375
    21.3.7while语句375
    21.3.8switch命令375
    21.4小结376
    第22章Kornshell378
    22.1Kornshell的历史378
    22.2ksh93shell的组成部分378
    22.2.1命令行参数379
    22.2.2默认文件380
    22.2.3环境变量380
    22.2.4内置命令385
    22.3在ksh93shell中编写脚本387
    22.3.1数学运算387
    22.3.2结构化命令389
    22.3.3命令重定向391
    22.3.4规程函数391
    22.4小结392
    第23章zshshell393
    23.1zshshell的历史393
    23.2zshshell的组成部分393
    23.2.1shell选项394
    23.2.2zshshell文件396
    23.2.3环境变量398
    23.2.4内置命令401
    23.3使用zsh编写脚本405
    23.3.1数学运算405
    23.3.2结构化命令406
    23.3.3函数406
    23.4小结408

    第5部分高级主题
    第24章使用数据库411
    24.1MySQL数据库411
    24.1.1安装MySQL411
    24.1.2完成MySQL配置413
    24.1.3MySQL客户端接口414
    24.1.4创建MySQL数据库对象417
    24.2PostgreSQL数据库419
    24.2.1安装PostgreSQL419
    24.2.2PostgreSQL命令接口421
    24.2.3创建PostgreSQL数据库对象422
    24.3处理表424
    24.3.1创建表424
    24.3.2插入和删除数据425
    24.3.3查询数据426
    24.4在脚本中使用数据库427
    24.4.1连接到数据库427
    24.4.2向服务器发送命令428
    24.4.3格式化数据431
    24.5小结432
    第25章使用Web433
    25.1Lynx程序433
    25.1.1安装Lynx434
    25.1.2Lynx命令行434
    25.1.3Lynx配置文件438
    25.1.4Lynx环境变量439
    25.1.5从Lynx捕获数据439
    25.2cURL程序441
    25.2.1安装cURL441
    25.2.2cURL命令行442
    25.2.3研究curl444
    25.3使用zsh连接网络445
    25.3.1TCP模块445
    25.3.2客户端/服务器模型446
    25.3.3使用zsh进行客户端/服务器编程446
    25.4小结449
    第26章使用电子邮件450
    26.1Linux电子邮件基础知识450
    26.1.1Linux中的电子邮件450
    26.1.2邮件传输代理451
    26.1.3邮件分发代理452
    26.1.4邮件用户代理452
    26.2设置服务器454
    26.2.1sendmail455
    26.2.2Postfix456
    26.3使用Mailx发送消息459
    26.4Mutt程序461
    26.4.1安装Mutt461
    26.4.2Mutt命令行462
    26.4.3使用Mutt462
    26.5小结463
    第27章管理员使用的shell脚本465
    27.1监视系统统计信息465
    27.1.1监视磁盘空闲空间465
    27.1.2谁在霸占磁盘资源467
    27.1.3监视CPU和内存使用情况469
    27.2执行备份474
    27.2.1归档数据文件474
    27.2.2脱机存储备份文件477
    27.3小结478
    附录Abash命令快速指南479
    A.1内置命令479
    A.2bash命令480
    A.3环境变量481
    附录Bsed和gawk快速指南484
    B.1sed编辑器484
    B.1.1启动sed编辑器484
    B.1.2sed命令484
    B.2gawk程序487
    B.2.1gawk命令格式487
    B.2.2使用gawk487
    B.2.3gawk变量488
    B.2.4gawk程序功能489
    附录Cshell版本比较491
    C.1变量491
    C.1.1环境变量491
    C.1.2用户定义的变量491
    C.1.3数组变量492
    C.2结构化命令492
    C.2.1if-then、while和until语句492
    C.2.2for语句493
    C.3数学计算493
查看详情
其他版本 / 全部 (4)
好书推荐 / 更多
Linux命令行和shell脚本编程宝典
胡迁作品:大象席地而坐
胡迁 著
Linux命令行和shell脚本编程宝典
OPUS作品(套装上下册)
[日]今敏 著;Mrs.X 译
Linux命令行和shell脚本编程宝典
近代能乐集(三岛由纪夫戏剧代表作,爱与美与死的永恒角力)
[日]三岛由纪夫 著;玖羽 译
Linux命令行和shell脚本编程宝典
上海字记:百年汉字设计档案
姜庆共、刘瑞樱 著
Linux命令行和shell脚本编程宝典
唐宋“古文运动”与士大夫文学
朱刚 著;王水照 编
Linux命令行和shell脚本编程宝典
行星
[英]贾尔斯•斯帕罗;Giles•Sparrow
Linux命令行和shell脚本编程宝典
马里琳·鲁滨逊作品基列三部曲:基列家书(2005年获得普利策小说奖,《卫报》21世纪百本伟大小说
玛丽莲·罗宾逊 著;李尧 译
Linux命令行和shell脚本编程宝典
特拉法尔加战役
朱利安·S.科贝特(Julian,S.,Corbett) 著;陈骆 译
Linux命令行和shell脚本编程宝典
大雪将至
[奥地利]罗伯特•泽塔勒 著
Linux命令行和shell脚本编程宝典
中国叙事学(第2版)
[美]浦安迪(Andrew H.Plaks) 著
Linux命令行和shell脚本编程宝典
肉体与石头:西方文明中的身体与城市
[美]理查德·桑内特 著;黄煜文 译
Linux命令行和shell脚本编程宝典
维多利亚女王:作为君王和女性的一生
[英]露西·沃斯利 著;张佩 译