由于此商品库存有限,请在下单后15分钟之内支付完成,手慢无哦!
100%刮中券,最高50元无敌券,券有效期7天
活动自2017年6月2日上线,敬请关注云钻刮券活动规则更新。
如活动受政府机关指令需要停止举办的,或活动遭受严重网络攻击需暂停举办的,或者系统故障导致的其它意外问题,苏宁无需为此承担赔偿或者进行补偿。
[正版]Linux命令行与shell脚本编程大全 第4版 赠Linux常用命令大全PDF linux入门到精通鸟哥的Li
¥ ×1
店铺公告
为保障消费者合理购买需求及公平交易机会,避免因非生活消费目的的购买货囤积商品,抬价转售等违法行为发生,店铺有权对异常订单不发货且不进行赔付。异常订单:包括但不限于相同用户ID批量下单,同一用户(指不同用户ID,存在相同/临近/虚构收货地址,或相同联系号码,收件人,同账户付款人等情形的)批量下单(一次性大于5本),以及其他非消费目的的交易订单。
温馨提示:请务必当着快递员面开箱验货,如发现破损,请立即拍照拒收,如验货有问题请及时联系在线客服处理,(如开箱验货时发现破损,所产生运费由我司承担,一经签收即为货物完好,如果您未开箱验货,一切损失就需要由买家承担,所以请买家一定要仔细验货),
关于退货运费:对于下单后且物流已发货货品在途的状态下,原则上均不接受退货申请,如顾客原因退货需要承担来回运费,如因产品质量问题(非破损问题)可在签收后,联系在线客服。
本店存在书、古旧书、收藏书、二手书等特殊商品,因受采购成本限制,可能高于定价销售,明码标价,介意者勿拍!
1.书籍因稀缺可能导致售价高于定价,图书实际定价参见下方详情内基本信息,请买家看清楚且明确后再拍,避免价格争议!
2.店铺无纸质均开具电子,请联系客服开具电子版
适读人群 :本书适合Linux系统管理员及相关开发人员阅读。
详尽梳理Linux命令行和shell命令知识,写shell脚本原来如此简单:
* 好口碑:有口皆碑的Linux作品,中文版累计入库10万册。
* 不过时:内容经3次迭代,经过时间检验。
* 全面化:含丰富示例,适用于所有Linux发行版。
* 新内容:新增“实战演练”环节,助你温故而知新。
内容简介
这是一本关于Linux命令行与shell脚本编程的全面性教程,主要包括四大部分 :Linux命令行、shell脚本编程基础、 shell脚本编程,以及创建和管理实用的脚本。本书这一版针对Linux系统的新特性进行了全面 新,不仅涵盖了详尽的动手教程和现实世界中的实用信息,还提供了与所学内容相关的参考信息和背景资料。通过本书的学习,你能轻松写出自己的shell脚本。
本书适合Linux系统管理员及相关开发人员阅读。
目录
第 一部分 Linux命令行
第 1 章 初识Linux shell 2
1.1 Linux初探 2
1.1.1 深入探究Linux内核 3
1.1.2 GNU实用工具 7
1.1.3 Linux桌面环境 9
1.2 Linux发行版 13
1.2.1 核心Linux发行版 14
1.2.2 特定用途的Linux发行版 14
1.3 小结 15
第 2 章 走进shell 16
2.1 进入命令行 16
2.1.1 控制台终端 16
2.1.2 图形化终端 17
2.2 通过Linux控制台终端访问CLI 18
2.3 通过图形化终端仿真器访问CLI 20
2.4 使用GNOME Terminal终端仿真器 21
2.4.1 访问GNOME Terminal 21
2.4.2 菜单栏 25
2.5 使用Konsole终端仿真器 27
2.5.1 访问Konsole终端仿真器 27
2.5.2 菜单栏 29
2.6 使用xterm终端仿真器 32
2.6.1 访问xterm 33
2.6.2 命令行选项 33
2.7 小结 34
第 3 章 bash shell基础命令 36
3.1 启动shell 36
3.2 使用shell提示符 37
3.3 与bash手册交互 37
3.4 浏览文件系统 41
3.4.1 Linux文件系统 41
3.4.2 遍历目录 44
3.5 列出文件和目录 46
3.5.1 显示基本列表 46
3.5.2 显示长列表 48
3.5.3 过滤输出列表 49
3.6 处理文件 51
3.6.1 创建文件 51
3.6.2 复制文件 51
3.6.3 使用命令行补全 53
3.6.4 链接文件 54
3.6.5 文件重命名 55
3.6.6 删除文件 57
3.7 管理目录 57
3.7.1 创建目录 57
3.7.2 删除目录 58
3.8 查看文件内容 60
3.8.1 查看文件类型 60
3.8.2 查看整个文件 61
3.8.3 查看部分文件 63
3.9 小结 64
第 4 章 多的bash shell命令 66
4.1 监测程序 66
4.1.1 探查进程 66
4.1.2 实时监测进程 72
4.1.3 结束进程 74
4.2 监测磁盘空间 75
4.2.1 挂载存储设备 75
4.2.2 使用df命令 78
4.2.3 使用du命令 79
4.3 处理数据文件 80
4.3.1 数据排序 80
4.3.2 数据搜索 83
4.3.3 数据压缩 85
4.3.4 数据归档 86
4.4 小结 87
第 5 章 理解shell 88
5.1 shell的类型 88
5.2 shell的父子关系 91
5.2.1 查看进程列表 95
5.2.2 别出心裁的子shell用法 96
5.3 理解外部命令和内建命令 99
5.3.1 外部命令 100
5.3.2 内建命令 101
5.4 小结 106
第 6 章 Linux环境变量 107
6.1 什么是环境变量 107
6.1.1 全局环境变量 108
6.1.2 局部环境变量 109
6.2 设置用户自定义变量 110
6.2.1 设置局部用户自定义变量 110
6.2.2 设置全局环境变量 111
6.3 删除环境变量 113
6.4 默认的shell环境变量 113
6.5 设置PATH环境变量 117
6.6 定位系统环境变量 118
6.6.1 登录shell 119
6.6.2 交互式shell进程 123
6.6.3 非交互式shell 124
6.6.4 环境变量持久化 124
6.7 数组变量 125
6.8 小结 126
第 7 章 理解Linux文件权限 127
7.1 Linux的安全性 127
7.1.1 etc passwd文件 127
7.1.2 etc shadow文件 129
7.1.3 添加新用户 129
7.1.4 删除用户 132
7.1.5 修改用户 132
7.2 使用Linux组 135
7.2.1 etc group文件 135
7.2.2 创建新组 136
7.2.3 修改组 137
7.3 理解文件权限 137
7.3.1 使用文件权限符号 137
7.3.2 默认文件权限 139
7.4 改安全设置 140
7.4.1 修改权限 140
7.4.2 改变所属关系 141
7.5 共享文件 142
7.6 访问控制列表 144
7.7 小结 145
第 8 章 管理文件系统 147
8.1 探索Linux文件系统 147
8.1.1 Linux文件系统的演进 147
8.1.2 日志文件系统 148
8.1.3 卷管理文件系统 150
8.2 使用文件系统 151
8.2.1 创建分区 151
8.2.2 创建文件系统 155
8.2.3 文件系统的检查与修复 157
8.3 逻辑卷管理 158
8.3.1 LVM布局 159
8.3.2 Linux中的LVM 159
8.3.3 使用Linux LVM 162
8.4 小结 163
第 9 章 安装软件 164
9.1 软件包管理基础 164
9.2 基于Debian的系统 165
9.2.1 使用apt管理软件包 165
9.2.2 使用apt安装软件包 167
9.2.3 使用apt升级软件 169
9.2.4 使用apt卸载软件包 170
9.2.5 apt仓库 171
9.3 基于Red Hat的系统 173
9.3.1 列出已安装的软件包 173
9.3.2 使用dnf安装软件 174
9.3.3 使用dnf升级软件 175
9.3.4 使用dnf卸载软件 176
9.3.5 处理损坏的依赖关系 176
9.3.6 RPM仓库 176
9.4 使用容器管理软件 177
9.4.1 使用snap容器 177
9.4.2 使用flatpak容器 179
9.5 从源代码安装 180
9.6 小结 183
第 10 章 文本编辑器 185
10.1 vim编辑器 185
10.1.1 检查vim软件包 185
10.1.2 vim基础 187
10.1.3 编辑数据 189
10.1.4 复制和粘贴 189
10.1.5 查找和替换 190
10.2 nano编辑器 191
10.3 Emacs编辑器 193
10.3.1 检查Emacs软件包 193
10.3.2 在控制台中使用Emacs 194
10.3.3 在GUI中使用Emacs 199
10.4 KDE系编辑器 200
10.4.1 KWrite编辑器 200
10.4.2 Kate编辑器 204
10.5 GNOME编辑器 208
10.5.1 启动gedit 208
10.5.2 gedit的基本功能 209
10.5.3 管理插件 211
10.6 小结 213
第二部分 shell脚本编程基础
第 11 章 构建基础脚本 216
11.1 使用多个命令 216
11.2 创建shell脚本文件 217
11.3 显示消息 218
11.4 使用变量 220
11.4.1 环境变量 220
11.4.2 用户自定义变量 221
11.4.3 命令替换 222
11.5 重定向输入和输出 224
11.5.1 输出重定向 224
11.5.2 输入重定向 225
11.6 管道 226
11.7 执行数学运算 228
11.7.1 expr命令 228
11.7.2 使用方括号 230
11.7.3 浮点数解决方案 231
11.8 退出脚本 234
11.8.1 查看退出状态码 234
11.8.2 exit命令 235
11.9 实战演练 237
11.10 小结 238
第 12 章 结构化命令 239
12.1 使用if-then语句 239
12.2 if-then-else语句 242
12.3 嵌套if语句 243
12.4 test命令 246
12.4.1 数值比较 248
12.4.2 字符串比较 249
12.4.3 文件比较 253
12.5 复合条件测试 262
12.6 if-then的 特性 263
12.6.1 使用单括号 264
12.6.2 使用双括号 265
12.6.3 使用双方括号 266
12.7 case命令 267
12.8 实战演练 268
12.9 小结 273
第 13 章 多的结构化命令 274
13.1 for命令 274
13.1.1 读取列表中的值 275
13.1.2 读取列表中的复杂值 276
13.1.3 从变量中读取值列表 277
13.1.4 从命令中读取值列表 278
13.1.5 改字段分隔符 279
13.1.6 使用通配符读取目录 280
13.2 C语言风格的for命令 282
13.2.1 C语言中的for命令 282
13.2.2 使用多个变量 283
13.3 while命令 284
13.3.1 while的基本格式 284
13.3.2 使用多个测试命令 285
13.4 until命令 286
13.5 嵌套循环 287
13.6 循环处理文件数据 290
13.7 循环控制 291
13.7.1 break命令 291
13.7.2 continue命令 294
13.8 处理循环的输出 296
13.9 实战演练 297
13.9.1 查找可执行文件 297
13.9.2 创建多个用户账户 299
13.10 小结 300
第 14 章 处理用户输入 301
14.1 传递参数 301
14.1.1 读取参数 301
14.1.2 读取脚本名 303
14.1.3 参数测试 305
14.2 特殊参数变量 305
14.2.1 参数统计 305
14.2.2 获取所有的数据 307
14.3 移动参数 309
14.4 处理选项 310
14.4.1 查找选项 311
14.4.2 使用getopt命令 314
14.4.3 使用getopts命令 317
14.5 选项标准化 319
14.6 获取用户输入 320
14.6.1 基本的读取 320
14.6.2 超时 322
14.6.3 无显示读取 323
14.6.4 从文件中读取 323
14.7 实战演练 324
14.8 小结 328
第 15 章 呈现数据 329
15.1 理解输入和输出 329
15.1.1 标准文件描述符 329
15.1.2 重定向错误 332
15.2 在脚本中重定向输出 333
15.2.1 临时重定向 333
15.2.2 重定向 334
15.3 在脚本中重定向输入 335
15.4 创建自己的重定向 336
15.4.1 创建输出文件描述符 336
15.4.2 重定向文件描述符 337
15.4.3 创建输入文件描述符 337
15.4.4 创建读 写文件描述符 338
15.4.5 关闭文件描述符 339
15.5 列出打开的文件描述符 340
15.6 抑制命令输出 341
15.7 使用临时文件 342
15.7.1 创建本地临时文件 342
15.7.2 在 tmp目录中创建临时文件 344
15.7.3 创建临时目录 344
15.8 记录消息 345
15.9 实战演练 346
15.10 小结 348
第 16 章 脚本控制 349
16.1 处理信号 349
16.1.1 重温Linux信号 349
16.1.2 产生信号 350
16.1.3 捕获信号 352
16.1.4 捕获脚本退出 353
16.1.5 修改或移除信号捕获 354
16.2 以后台模式运行脚本 356
16.2.1 后台运行脚本 356
16.2.2 运行多个后台作业 358
16.3 在非控制台下运行脚本 359
16.4 作业控制 360
16.4.1 查看作业 360
16.4.2 重启已停止的作业 362
16.5 调整谦让度 363
16.5.1 nice命令 363
16.5.2 renice命令 364
16.6 定时运行作业 364
16.6.1 使用at命令调度作业 364
16.6.2 调度需要定期运行的脚本 368
16.7 使用新shell启动脚本 371
16.8 实战演练 372
16.9 小结 378
第三部分 shell脚本编程
第 17 章 创建函数 380
17.1 脚本函数基础 380
17.1.1 创建函数 381
17.1.2 使用函数 381
17.2 函数返回值 383
17.2.1 默认的退出状态码 383
17.2.2 使用return命令 384
17.2.3 使用函数输出 385
17.3 在函数中使用变量 386
17.3.1 向函数传递参数 386
17.3.2 在函数中处理变量 388
17.4 数组变量和函数 390
17.4.1 向函数传递数组 390
17.4.2 从函数返回数组 392
17.5 函数递归 392
17.6 创建库 393
17.7 在命令行中使用函数 395
17.7.1 在命令行中创建函数 395
17.7.2 在.bashrc文件中定义函数 396
17.8 实战演练 398
17.8.1 下载及安装 398
17.8.2 构建库 398
17.8.3 shtool库函数 399
17.8.4 使用库 400
17.9 小结 401
第 18 章 图形化桌面环境中的脚本编程 402
18.1 创建文本菜单 402
18.1.1 创建菜单布局 403
18.1.2 创建菜单函数 404
18.1.3 添加菜单逻辑 404
18.1.4 整合shell脚本菜单 405
18.1.5 使用select命令 406
18.2 创建文本窗口部件 407
18.2.1 dialog软件包 408
18.2.2 dialog选项 413
18.2.3 在脚本中使用dialog命令 415
18.3 图形化窗口部件 417
18.3.1 KDE环境 417
18.3.2 GNOME环境 420
18.4 实战演练 424
18.5 小结 427
第 19 章 初识sed和gawk 428
19.1 文本处理 428
19.1.1 sed编辑器 428
19.1.2 gawk编辑器 431
19.2 sed编辑器基础命令 437
19.2.1 多的替换选项 437
19.2.2 使用地址 438
19.2.3 删除行 441
19.2.4 插入和附加文本 443
19.2.5 修改行 445
19.2.6 转换命令 446
19.2.7 再探打印 447
19.2.8 使用sed处理文件 449
19.3 实战演练 451
19.4 小结 456
第 20 章 正则表达式 457
20.1 正则表达式基础 457
20.1.1 定义 457
20.1.2 正则表达式的类型 458
20.2 定义BRE模式 459
20.2.1 普通文本 459
亲,大宗购物请点击企业用户渠道>小苏的服务会更贴心!
亲,很抱歉,您购买的宝贝销售异常火爆让小苏措手不及,请稍后再试~
非常抱歉,您前期未参加预订活动,
无法支付尾款哦!
抱歉,您暂无任性付资格