Linux命令行与shell脚本编程大全
2012-9
人民邮电出版社
[美] Richard Blum,[美] Christine Bresnahan
619
939000
武海峰
无
引 言欢迎打开《Linux命令行和shell脚本编程大全(第2版)》。和所有“大全”系列书籍一样,本书内容涵盖了详尽的动手教程和实际应用中的实用信息,还提供了与所学内容相关的参考信息和背景资料。本书是关于Linux命令行和shell命令的相当全面的资源。读完本书,你将可以轻松写出自己的shell脚本来自动化处理Linux系统上的任何任务。读者对象如果你是Linux环境下的系统管理员,那么学会编写shell脚本将让你受益匪浅。本书并未细述安装Linux系统的每个步骤,但只要系统已安装好Linux并能运行起来,你就可以开始考虑如何将一些日常的系统管理任务实现自动化。这时shell脚本编程就能发挥作用了,而这也正是本书的作用所在。本书将演示如何使用shell脚本来自动处理系统管理任务,包括从监测系统统计数据和数据文件到为你的老板生成报告。如果你是Linux爱好者,那你也能从本书中受益。现今,用户很容易在诸多部件(widget)堆积而成的图形环境中迷失。大多数桌面Linux发行版都尽量向一般用户隐藏系统内核。然而有时你确实需要知道内部发生了什么。本书将告诉你如何启动Linux命令行以及启动后下一步做什么。通常,如果是执行一些简单任务(比如文件管理),那么在命令行下操作要比在花哨的图形界面下方便得多。在命令行下有大量的命令可供使用,本书将会展示如何使用它们。本书结构本书将会引领你从Linux命令行基础一直学到写出自己的shell脚本。全书分成四部分,每部分都基于前面的内容。第一部分假定你已经有个能运行的Linux系统,或者正在设法获取Linux系统。第1章“初识Linux shell”,描述了构成整个Linux系统的各个部分,并且说明了shell是如何融入Linux的。在介绍了Linux系统的基础知识之后,这部分继续探讨了:使用终端模拟包来访问shell(第2章);介绍基本的shell命令(第3章);使用更高级的shell命令来窥探系统信息(第4章);使用shell变量来操作数据(第5章);理解Linux文件系统和安全(第6章);在命令行上操作Linux文件系统(第7章);在命令行上安装和更新软件(第8章);使用Linux编辑器开始编写shell脚本(第9章)。第二部分将从编写shell脚本开始。在你阅读各章内容时,你会:学习如何创建和运行shell脚本(第10章);改变shell脚本中程序的流程(第11章);迭代代码片段(第12章);在脚本中处理用户输入的数据(第13章);了解在脚本中存储和显示数据的不同方法(第14章);控制脚本如何以及何时在系统中运行(第15章)。第三部分深入探讨shell脚本编程的更高级领域,包括:在所有脚本中创建自己的函数(第16章);利用Linux图形化桌面来和脚本用户交互(第17章);使用高级Linux命令过滤和解析数据文件(第18章);使用正则表达式来定义数据(第19章);学习在脚本中操作数据的高级方法(第20章);从原始数据生成报告(第21章);修改shell脚本,使其能在其他Linux shell中运行(第22章)。本书的最后一部分——第四部分演示了如何在现实环境中使用shell脚本。在这部分,你将:学习如何在shell脚本中使用流行的开源数据库(第23章);学习如何从网站上提取数据并在系统间发送数据(第24章);使用E-mail向外部用户发送通知和报告(第25章);编写shell脚本来自动化你的日常系统管理工作(第26章);利用你在本书中学到的所有功能来创建专业水平的shell脚本(第27章)。约定和排版为帮助读者更好地理解本书内容,全书作了很多不同的组织和排版上的处理。说明和注意当有重要的内容想让读者注意时,这部分信息会出现在注意中。注意 这部分信息很重要,所以放在单独的段落里并采用特殊排版。注意提供了要特别注意的信息,不管是小小的不便还是对数据和系统潜在的危害。对于与正文有关的其他有意思的内容,我们会用说明给出。说明 说明提供了有用的补充或辅助信息,但有些偏离当前讲述的主题。最低需求本书并不局限于某个特定Linux发行版,你可以使用任何可用的Linux系统来跟着书中内容学习。书中大部分内容都采用了bash shell。在大多数Linux系统中,bash shell是默认shell。下一步做什么看完了本书,你就已经可以在日常工作中使用Linux命令了。在不断变化的Linux世界,最好能不断了解Linux的最新发展。通常Linux发行版会发生一些变化,增加新的功能同时移除过时的功能。经常关注Linux方面的资讯,能保证你的Linux知识也在不断更新。找一个不错的Linux论坛,关注一下Linux世界的最新动态。有很多流行的Linux新闻站点,比如Slashdot和Distrowatch,都能提供哪怕是几分钟前发生的Linux新进展。
《Linux命令行与shell脚本编程大全(第2版)》是一本关于Linux命令行与shell脚本编程的全面教程。全书分为四部分:第一部分介绍Linuxshell命令行;第二部分介绍shell脚本编程基础;第三部分深入探讨shell脚本编程的高级内容;第四部分介绍如何在现实环境中使用shell脚本。本书不仅涵盖了详尽的动手教程和现实世界中的实用信息,还提供了与所学内容相关的参考信息和背景资料。
《Linux命令行与shell脚本编程大全(第2版)》内容全面,语言简练,示例丰富,适合于Linux系统管理员及Linux爱好者阅读参考。
Richard Blum 系统和网络管理员,已经在IT行业工作了22年多。他管理过UNIX、Linux、Novell和微软服务器,用Linux shell脚本进行过自动化网络监测,并在大多数常见的Linux shell环境中写过脚本。他还是一名网络课程讲师,美国各地的多所大学和学院都采用他的Linux基础课程。除本书外,Richard还著有Professional Linux Programming等书。
Christine Bresnahan 系统管理员,已经在IT行业工作了近30年。目前在印第安纳波利斯市的常春藤技术社区学院担任兼职教授,讲授Linux系统管理、Linux安全和Windows安全等课程。
目 录
第一部分 Linux 命令行
第1章 初识Linux shell 2
1.1 什么是Linux 2
1.1.1 深入探究Linux内核 3
1.1.2 GNU工具链 10
1.1.3 Linux桌面环境 11
1.2 Linux发行版 16
1.2.1 核心Linux发行版 16
1.2.2 专业Linux发行版 17
1.2.3 Linux LiveCD 17
1.3 小结 19
第2章 走进shell 20
2.1 终端模拟 20
2.1.1 图形功能 21
2.1.2 键盘 24
2.2 terminfo数据库 25
2.3 Linux控制台 28
2.4 xterm终端 29
2.4.1 命令行参数 30
2.4.2 xterm主菜单 31
2.4.3 VT选项菜单 32
2.4.4 VT字体菜单 34
2.5 Konsole终端 36
2.5.1 命令行参数 36
2.5.2 标签式窗口会话 37
2.5.3 配置文件 38
2.5.4 菜单栏 39
2.6 GNOME Terminal 43
2.6.1 命令行参数 43
2.6.2 标签 43
2.6.3 菜单栏 44
2.7 小结 47
第3章 基本的bash shell命令 48
3.1 启动shell 48
3.2 shell提示符 49
3.3 bash手册 51
3.4 浏览文件系统 52
3.4.1 Linux文件系统 52
3.4.2 遍历目录 54
3.5 文件和目录列表 56
3.5.1 基本列表功能 56
3.5.2 修改输出信息 57
3.5.3 完整的参数列表 58
3.5.4 过滤输出列表 60
3.6 处理文件 61
3.6.1 创建文件 61
3.6.2 复制文件 61
3.6.3 链接文件 63
3.6.4 重命名文件 65
3.6.5 删除文件 65
3.7 处理目录 67
3.7.1 创建目录 67
3.7.2 删除目录 67
3.8 查看文件内容 68
3.8.1 查看文件统计信息 68
3.8.2 查看文件类型 69
3.8.3 查看整个文件 69
3.8.4 查看部分文件 72
3.9 小结 73
第4章 更多的bash shell命令 75
4.1 监测程序 75
4.1.1 探查进程 75
4.1.2 实时监测进程 82
4.1.3 结束进程 84
4.2 监测磁盘空间 85
4.2.1 挂载存储媒体 86
4.2.2 使用df命令 89
4.2.3 使用du命令 89
4.3 处理数据文件 90
4.3.1 排序数据 91
4.3.2 搜索数据 94
4.3.3 压缩数据 96
4.3.4 归档数据 99
4.4 小结 100
第5章 使用Linux环境变量 101
5.1 什么是环境变量 101
5.1.1 全局环境变量 102
5.1.2 局部环境变量 103
5.2 设置环境变量 106
5.2.1 设置局部环境变量 106
5.2.2 设置全局环境变量 107
5.3 删除环境变量 107
5.4 默认shell环境变量 108
5.5 设置PATH环境变量 111
5.6 定位系统环境变量 112
5.6.1 登录shell 112
5.6.2 交互式shell 116
5.6.3 非交互式shell 118
5.7 可变数组 118
5.8 使用命令别名 119
5.9 小结 120
第6章 理解Linux文件权限 122
6.1 Linux的安全性 122
6.1.1 /etc/passwd文件 122
6.1.2 /etc/shadow文件 124
6.1.3 添加新用户 125
6.1.4 删除用户 127
6.1.5 修改用户 128
6.2 使用Linux组 130
6.2.1 /etc/group文件 131
6.2.2 创建新组 131
6.2.3 修改组 132
6.3 理解文件权限 133
6.3.1 使用文件权限符 133
6.3.2 默认文件权限 134
6.4 改变安全性设置 136
6.4.1 改变权限 136
6.4.2 改变所属关系 137
6.5 共享文件 138
6.6 小结 139
第7章 管理文件系统 141
7.1 探索Linux文件系统 141
7.1.1 基本的Linux文件系统 141
7.1.2 日志文件系统 142
7.1.3 扩展的Linux日志文件系统 143
7.2 操作文件系统 145
7.2.1 创建分区 145
7.2.2 创建文件系统 147
7.2.3 如果出错了 149
7.3 逻辑卷管理器 150
7.3.1 逻辑卷管理布局 150
7.3.2 Linux中的LVM 151
7.3.3 使用Linux LVM 153
7.4 小结 157
第8章 安装软件程序 158
8.1 包管理基础 158
8.2 基于Debian的系统 159
8.2.1 用aptitude管理软件包 159
8.2.2 用aptitude安装软件包 161
8.2.3 用aptitude更新软件 163
8.2.4 用aptitude卸载软件 164
8.2.5 aptitude库 164
8.3 基于Red Hat的系统 166
8.3.1 列出已安装包 166
8.3.2 用yum安装软件 167
8.3.3 用yum更新软件 168
8.3.4 用yum卸载软件 169
8.3.5 处理损坏的包依赖关系 169
8.3.6 yum软件库 171
8.4 从源码安装 172
8.5 小结 174
第9章 使用编辑器 176
9.1 Vim编辑器 176
9.1.1 Vim基础 176
9.1.2 编辑数据 178
9.1.3 复制和粘贴 179
9.1.4 查找和替换 180
9.2 Emacs编辑器 180
9.2.1 在控制台上使用Emacs 180
9.2.2 在X Window中使用Emacs 185
9.3 KDE系编辑器 186
9.3.1 KWrite编辑器 186
9.3.2 Kate编辑器 190
9.4 GNOME编辑器 192
9.4.1 启动gedit 192
9.4.2 基本的gedit功能 193
9.4.3 设定偏好设置 194
9.5 小结 196
第二部分 shell脚本编程基础
第10章 构建基本脚本 200
10.1 使用多个命令 200
10.2 创建shell脚本文件 201
10.3 显示消息 202
10.4 使用变量 203
10.4.1 环境变量 204
10.4.2 用户变量 205
10.4.3 反引号 206
10.5 重定向输入和输出 207
10.5.1 输出重定向 208
10.5.2 输入重定向 208
10.6 管道 209
10.7 执行数学运算 212
10.7.1 expr命令 212
10.7.2 使用方括号 214
10.7.3 浮点解决方案 215
10.8 退出脚本 218
10.8.1 查看退出状态码 218
10.8.2 exit命令 219
10.9 小结 221
第11章 使用结构化命令 222
11.1 使用if-then语句 222
11.2 if-then-else语句 224
11.3 嵌套if 225
11.4 test命令 226
11.4.1 数值比较 227
11.4.2 字符串比较 228
11.4.3 文件比较 232
11.5 复合条件测试 239
11.6 if-then的高级特性 240
11.6.1 使用双尖括号 240
11.6.2 使用双方括号 241
11.7 case命令 242
11.8 小结 243
第12章 更多的结构化命令 245
12.1 for命令 245
12.1.1 读取列表中的值 246
12.1.2 读取列表中的复杂值 247
12.1.3 从变量读取列表 248
12.1.4 从命令读取值 249
12.1.5 更改字段分隔符 250
12.1.6 用通配符读取目录 251
12.2 C语言风格的for命令 253
12.2.1 C语言的for命令 253
12.2.2 使用多个变量 255
12.3 while命令 255
12.3.1 while的基本格式 255
12.3.2 使用多个测试命令 256
12.4 until命令 258
12.5 嵌套循环 259
12.6 循环处理文件数据 261
12.7 控制循环 262
12.7.1 break命令 262
12.7.2 continue命令 265
12.8 处理循环的输出 267
12.9 小结 269
第13章 处理用户输入 270
13.1 命令行参数 270
13.1.1 读取参数 270
13.1.2 读取程序名 272
13.1.3 测试参数 274
13.2 特殊参数变量 274
13.2.1 参数计数 274
13.2.2 抓取所有的数据 276
13.3 移动变量 277
13.4 处理选项 278
13.4.1 查找选项 279
13.4.2 使用getopt命令 282
13.4.3 使用更高级的getopts 284
13.5 将选项标准化 286
13.6 获得用户输入 287
13.6.1 基本的读取 287
13.6.2 超时 289
13.6.3 隐藏方式读取 290
13.6.4 从文件中读取 290
13.7 小结 291
第14章 呈现数据 293
14.1 理解输入和输出 293
14.1.1 标准文件描述符 293
14.1.2 重定向错误 295
14.2 在脚本中重定向输出 297
14.2.1 临时重定向 297
14.2.2 永久重定向 298
14.3 在脚本中重定向输入 299
14.4 创建自己的重定向 299
14.4.1 创建输出文件描述符 300
14.4.2 重定向文件描述符 300
14.4.3 创建输入文件描述符 301
14.4.4 创建读写文件描述符 302
14.4.5 关闭文件描述符 303
14.5 列出打开的文件描述符 304
14.6 阻止命令输出 305
14.7 创建临时文件 306
14.7.1 创建本地临时文件 306
14.7.2 在/tmp目录创建临时文件 308
14.7.3 创建临时目录 308
14.8 记录消息 309
14.9 小结 310
第15章 控制脚本 312
15.1 处理信号 312
15.1.1 重温Linux信号 312
15.1.2 产生信号 313
15.1.3 捕捉信号 314
15.1.4 捕捉脚本的退出 315
15.1.5 移除捕捉 316
15.2 以后台模式运行脚本 317
15.2.1 后台运行脚本 317
15.2.2 运行多个后台作业 318
15.2.3 退出终端 319
15.3 在非控制台下运行脚本 319
15.4 作业控制 320
15.4.1 查看作业 320
15.4.2 重启停止的作业 322
15.5 调整谦让度 323
15.5.1 nice命令 323
15.5.2 renice命令 324
15.6 定时运行作业 324
15.6.1 用at命令来计划执行作业 325
15.6.2 计划定期执行脚本 328
15.7 启动时运行 330
15.7.1 开机时运行脚本 330
15.7.2 在新shell中启动 332
15.8 小结 333
第三部分 高级shell脚本编程
第16章 创建函数 336
16.1 基本的脚本函数 336
16.1.1 创建函数 337
16.1.2 使用函数 337
16.2 返回值 339
16.2.1 默认退出状态码 339
16.2.2 使用return命令 340
16.2.3 使用函数输出 341
16.3 在函数中使用变量 342
16.3.1 向函数传递参数 342
16.3.2 在函数中处理变量 344
16.4 数组变量和函数 346
16.4.1 向函数传数组参数 346
16.4.2 从函数返回数组 348
16.5 函数递归 349
16.6 创建库 350
16.7 在命令行上使用函数 351
16.7.1 在命令行上创建函数 352
16.7.2 在.bashrc文件中定义函数 352
16.8 小结 354
第17章 图形化桌面上的脚本编程 355
17.1 创建文本菜单 355
17.1.1 创建菜单布局 356
17.1.2 创建菜单函数 356
17.1.3 添加菜单逻辑 357
17.1.4 整合shell脚本菜单 358
17.1.5 使用select命令 359
17.2 使用窗口 360
17.2.1 dialog包 361
17.2.2 dialog选项 366
17.2.3 在脚本中使用dialog命令 368
17.3 使用图形 369
17.3.1 KDE环境 369
17.3.2 GNOME环境 372
17.4 小结 376
第18章 初识sed和gawk 377
18.1 文本处理 377
18.1.1 sed编辑器 377
18.1.2 gawk程序 380
18.2 sed编辑器基础 385
18.2.1 更多的替换选项 385
18.2.2 使用地址 387
18.2.3 删除行 389
18.2.4 插入和附加文本 391
18.2.5 修改行 392
18.2.6 转换命令 393
18.2.7 回顾打印 394
18.2.8 用sed和文件一起工作 396
18.3 小结 398
第19章 正则表达式 399
19.1 什么是正则表达式 399
19.1.1 定义 399
19.1.2 正则表达式的类型 400
19.2 定义BRE模式 401
19.2.1 纯文本 401
19.2.2 特殊字符 402
19.2.3 锚字符 403
19.2.4 点字符 405
19.2.5 字符组 405
19.2.6 排除字符组 407
19.2.7 使用区间 408
19.2.8 特殊字符组 409
19.2.9 星号 409
19.3 扩展正则表达式 411
19.3.1 问号 411
19.3.2 加号 412
19.3.3 使用花括号 412
19.3.4 管道符号 413
19.3.5 聚合表达式 414
19.4 实用中的正则表达式 414
19.4.1 目录文件计数 415
19.4.2 验证电话号码 416
19.4.3 解析邮件地址 417
19.5 小结 419
第20章 sed进阶 420
20.1 多行命令 420
20.1.1 next命令 421
20.1.2 多行删除命令 424
20.1.3 多行打印命令 424
20.2 保持空间 425
20.3 排除命令 426
20.4 改变流 428
20.4.1 跳转 429
20.4.2 测试 430
20.5 模式替代 431
20.5.1 and符号 431
20.5.2 替换单独的单词 432
20.6 在脚本中使用sed 433
20.6.1 使用包装脚本 433
20.6.2 重定向sed的输出 434
20.7 创建sed实用工具 434
20.7.1 加倍行间距 434
20.7.2 对可能含有空白行的文件加倍行间距 435
20.7.3 给文件中的行编号 436
20.7.4 打印末尾行 437
20.7.5 删除行 437
20.7.6 删除HTML标签 439
20.8 小结 441
第21章 gawk进阶 442
21.1 使用变量 442
21.1.1 内建变量 442
21.1.2 自定义变量 447
21.2 处理数组 449
21.2.1 定义数组变量 449
21.2.2 遍历数组变量 450
21.2.3 删除数组变量 451
21.3 使用模式 451
21.3.1 正则表达式 451
21.3.2 匹配操作符 452
21.3.3 数学表达式 452
21.4 结构化命令 453
21.4.1 if语句 453
21.4.2 while语句 455
21.4.3 do-while语句 456
21.4.4 for语句 457
21.5 格式化打印 457
21.6 内建函数 460
21.6.1 数学函数 460
21.6.2 字符串函数 461
21.6.3 时间函数 463
21.7 自定义函数 463
21.7.1 定义函数 463
21.7.2 使用自定义函数 464
21.7.3 创建函数库 464
21.8 小结 465
第22章 使用其他shell 467
22.1 什么是dash shell 467
22.2 dash shell的特性 468
22.2.1 dash命令行参数 468
22.2.2 dash环境变量 469
22.2.3 dash内建命令 471
22.3 dash脚本编程 472
22.3.1 创建dash脚本 473
22.3.2 不能使用的功能 473
22.4 zsh shell 477
22.5 zsh shell的组成 478
22.5.1 shell选项 478
22.5.2 内建命令 480
22.6 zsh脚本编程 485
22.6.1 数学运算 485
22.6.2 结构化命令 487
22.6.3 函数 487
22.7 小结 489
第四部分 高级shell脚本编程主题
第23章 使用数据库 492
23.1 MySQL数据库 492
23.1.1 安装MySQL 492
23.1.2 MySQL客户端界面 494
23.1.3 创建MySQL数据库对象 498
23.2 PostgreSQL数据库 500
23.2.1 安装PostgreSQL 501
23.2.2 PostgreSQL命令行界面 501
23.2.3 创建PostgreSQL数据库对象 503
23.3 使用数据表 505
23.3.1 创建数据表 505
23.3.2 插入和删除数据 507
23.3.3 查询数据 508
23.4 在脚本中使用数据库 509
23.4.1 连接到数据库 509
23.4.2 向服务器发送命令 511
23.4.3 格式化数据 514
23.5 小结 516
第24章 使用Web 517
24.1 Lynx程序 517
24.1.1 安装Lynx 518
24.1.2 lynx命令行 518
24.1.3 Lynx配置文件 523
24.1.4 Lynx环境变量 524
24.1.5 从Lynx中抓取数据 524
24.2 cURL程序 527
24.2.1 安装cURL 527
24.2.2 探索cURL 527
24.3 使用zsh处理网络 528
24.3.1 TCP模块 528
24.3.2 客户端/服务器模式 529
24.3.3 使用zsh进行C/S编程 530
24.4 小结 533
第25章 使用E-mail 534
25.1 Linux E-mail基础 534
25.1.1 Linux中的E-mail 534
25.1.2 邮件传送代理 535
25.1.3 邮件投递代理 536
25.1.4 邮件用户代理 537
25.2 建立服务器 540
25.2.1 sendmail 541
25.2.2 Postfix 543
25.3 使用Mailx发送消息 545
25.4 Mutt程序 548
25.4.1 安装Mutt 548
25.4.2 Mutt命令行 548
25.4.3 使用Mutt 549
25.5 小结 551
第26章 编写脚本实用工具 552
26.1 监测磁盘空间 552
26.1.1 需要的功能 552
26.1.2 创建脚本 555
26.1.3 运行脚本 556
26.2 进行备份 557
26.3 管理用户账户 563
26.3.1 需要的功能 563
26.3.2 创建脚本 569
26.4 小结 575
第27章 shell脚本编程进阶 576
27.1 监测系统统计数据 576
27.1.1 系统快照报告 576
27.1.2 系统统计数据报告 582
27.2 问题跟踪数据库 589
27.2.1 创建数据库 589
27.2.2 记录问题 591
27.2.3 更新问题 594
27.2.4 查找问题 599
27.3 小结 602
附录A bash命令快速指南 604
附录B sed和gawk快速指南 611
版权页: 插图: 5.Bookmarks Bookmarks(书签)菜单选项提供了在Konsole窗口中管理书签的一个途径。你可以使用书签保存活动会话中的目录位置,然后方便地在同一个会话或新会话中返回那里。你是否经历过顺次打开几层目录来查找Linux系统上的一些东西,退出,然后却忘了是怎样到达那里的?书签可以解决这个问题。当你到了需要的目录位置,添加一个新书签。当你要返回时,在Bookmarks中找到你的新书签,然后它会自动将目录切换到你要的位置。书签选项包括以下几项。 Add Bookmark(添加书签):在当前目录位置创建新书签。 Bookmark Tabs as Folder(标记标签为文件夹):为当前终端窗口所有标签创建一个书签。 New Bookmark Folder(新建书签文件夹):为书签创建一个新的存储文件夹。 Edit Bookmarks(编辑书签):编辑已有的书签。 你的书签列表:所有你创建的书签。 你可以在Konsole中保存任意多个书签,但书签太多可能会容易让人引起混淆。默认情况下,它们都出现在Bookmarks区域的同一级中。你可以创建新的书签文件夹,使用EditBookmarks选项将单个书签移动到新文件夹中,来管理书签。 6.Settings Settings菜单栏区域允许你定制和管理你的配置文件以及给当前标签会话添加一些功能。这个区域包括以下几项。 Change Profile(修改配置文件):将一个选定的配置文件应用到当前标签。 Edit Current Profile(编辑当前配置文件):打开一个对话框,其中有大量配置文件设置可以修改。 Manage Profiles(管理配置文件):允许特定配置文件作为默认配置文件,并使得你可以 创建和删除配置文件。还可以管理配置文件出现在File菜单中的顺序。 Configure Shorlcuts(配置快捷键):创建Konsole命令的键盘陕捷方式。 Configure Notifications(配置提醒):为特定会话事件设置动作。 Configure Konsole(配置Konsole):创建特定Konsole模式和会话。 Configure Notifications区域非常好用。它允许你将会话中可能出现的5种特定事件关联到6个不同的动作上。当其中某个事件发生时,定义好的动作就可以被执行了。
无
没有太多讲linux的基本操作,所以适合有一点基础的人
简明易懂,实用的技巧
书不错,如果你只是想了解可以看看
命令比较齐全,适合有一定基础的来看,但又不是单纯的罗列Linux命令。讲解很细致,喜欢Linux的朋友可以看看。
刚入门Ubuntu操作系统,学习下BASH命令还是很有必要的。平时翻阅下这本参考书,对CLI界面的操作还是很有帮助的。
知识点讲的很全面,基本都是常用的,不错的参考书。
书本内容对于入门来说相当详尽,是一本很不错的学习参考书
如题,看过有关SHELL的书最喜欢这本了。
我是linux初学者,通过这本书学会了很多东西。
书很好,很新,适合学习Linux的童鞋们
内容什么的很详细,值得一看
纸质确实很好。解答了我很多对shell不了解的东西
书不错,但是估计翻译得不怎么样。。。
对linux有着更好的了解
挺详细的,还没来得及细看呢
书质量很好,速度也很快
就是一本字典
不错,难度不是太大
能顺便跟着动手
Linux命令行与shell脚本编程大全