出版社: 人民邮电出版社
原作名: Linux Shell Scripting Cookbook
译者: 门佳
出版年: 2011-11
页数: 254
定价: 49.00元
装帧: 平装
丛书: 图灵程序设计丛书·Linux/UNIX系列
ISBN: 9787115264725
内容简介 · · · · · ·
《Linux Shell脚本攻略》通过细致剖析实际应用中的110多个案例,使许多看似复杂的Linux shell脚本任务迎刃而解。《Linux Shell脚本攻略》会帮助读者利用少量命令的组合完成诸如文本处理、文件管理、备份等复杂的数据管理工作。它将告诉你如何利用shell命令快速开发常规任务,综合应用grep、find、sed和awk等常用命令,凭借短短几个命令行从Web挖掘数据的shell脚本,利用归档工具运行并自动化各种任务,诸如自动备份和存储;帮助你理解文件系统、文件类型以及文件管理;用shell创建以及维护文件或目录归档、压缩格式和加密技术;通过srlell脚本设置以太网和无线LAN;使用登录技术监控网络上的各种动态。
作者简介 · · · · · ·
Sarath Lakshman,年轻的Linux天才程序员、开源软件及GNU/Linux活跃分子,写作本书时年仅20岁。他在印度出生并成长,目前是印度科钦科技大学模范工程学院的学生。2004年,他就开发了名为Slynux的GNU/Linux发布版。另外,他还为Linux Foryou月刊撰写文章。在Fedora、Pardus Linux、PiTiVi、Ubuntu以及Google Summerof Code等项目中,他都作出了显著的贡献。
目录 · · · · · ·
1.1 简介 1
1.2 终端打印 3
1.2.1 实战演练 3
1.2.2 补充内容 4
1.3 玩转变量和环境变量 5
1.3.1 预备知识 5
1.3.2 实战演练 6
1.3.3 补充内容 7
1.4 通过shell 进行数学运算 8
1.4.1 预备知识 9
1.4.2 实战演练 9
1.5 玩转文件描述符和重定向 10
1.5.1 预备知识 10
1.5.2 实战演练 11
1.5.3 补充内容 13
1.6 数组和关联数组 15
1.6.1 预备知识 15
1.6.2 实战演练 15
1.6.3 补充内容 16
1.7 使用别名 17
1.7.1 预备知识 17
1.7.2 实战演练 17
1.7.3 补充内容 18
1.8 获取终端信息 18
1.8.1 预备知识 18
1.8.2 实战演练 18
1.9 获取、设置日期和延时 19
1.9.1 预备知识 19
1.9.2 实战演练 19
1.9.3 补充内容 21
1.10 调试脚本 22
1.10.1 预备知识 22
1.10.2 实战演练 22
1.10.3 补充内容 23
1.11 函数和参数 23
1.11.1 实战演练 23
1.11.2 补充内容 24
1.12 读取命令序列输出 25
1.12.1 预备知识 26
1.12.2 实战演练 26
1.12.3 补充内容 26
1.13 以不按回车键的方式读取字符“n” 27
1.13.1 预备知识 27
1.13.2 实战演练 27
1.14 字段分隔符和迭代器 28
1.14.1 预备知识 28
1.14.2 实战演练 29
1.15 比较与测试 30
1.15.1 预备知识 30
1.15.2 实战演练 30
第2 章 命令之乐 34
2.1 简介 34
2.2 用cat 进行拼接 34
2.2.1 预备知识 34
2.2.2 实战演练 35
2.2.3 工作原理 35
2.2.4 补充内容 35
2.3 录制与回放终端会话 37
2.3.1 预备知识 37
2.3.2 实战演练 37
2.3.3 工作原理 37
2.4 文件查找与文件列表 38
2.4.1 预备知识 38
2.4.2 实战演练 38
2.4.3 补充内容 39
2.5 玩转xargs 45
2.5.1 预备知识 45
2.5.2 实战演练 45
2.5.3 工作原理 46
2.5.4 补充内容 46
2.6 用tr 进行转换 49
2.6.1 预备知识 49
2.6.2 实战演练 49
2.6.3 工作原理 49
2.6.4 补充内容 50
2.7 校验和与核实 52
2.7.1 预备知识 52
2.7.2 实战演练 52
2.7.3 工作原理 52
2.7.4 补充内容 53
2.8 排序、单一与重复 53
2.8.1 预备知识 54
2.8.2 实战演练 54
2.8.3 工作原理 54
2.8.4 补充内容 55
2.9 临时文件命名与随机数 58
2.9.1 实战演练 58
2.9.2 工作原理 58
2.10 分割文件和数据 59
2.10.1 工作原理 59
2.10.2 补充内容 59
2.11 根据扩展名切分文件名 61
2.11.1 实战演练 61
2.11.2 工作原理 61
2.12 批量重命名和移动 63
2.12.1 预备知识 63
2.12.2 实战演练 63
2.12.3 工作原理 64
2.13 拼写检查与词典操作 65
2.13.1 实战演练 65
2.13.2 工作原理 65
2.14 交互输入自动化 66
2.14.1 预备知识 66
2.14.2 实战演练 66
2.14.3 工作原理 67
2.14.4 补充内容 67
第3 章 以文件之名 69
3.1 简介 69
3.2 生成任意大小的文件 69
3.3 文本文件的交集与差集 70
3.3.1 预备知识 71
3.3.2 实战演练 71
3.4 查找并删除重复文件 73
3.4.1 预备知识 73
3.4.2 实战演练 73
3.4.3 工作原理 74
3.4.4 参考 75
3.5 创建长路径目录 75
3.5.1 预备知识 75
3.5.2 实战演练 76
3.6 文件权限、所有权和粘滞位 76
3.6.1 预备知识 76
3.6.2 实战演练 78
3.6.3 补充内容 79
3.7 创建不可修改文件 80
3.7.1 预备知识 80
3.7.2 实战演练 80
3.8 批量生成空白文件 80
3.8.1 预备知识 81
3.8.2 实战演练 81
3.9 查找符号链接及其指向目标 81
3.9.1 预备知识 81
3.9.2 实战演练 81
3.10 列举文件类型统计信息 82
3.10.1 预备知识 83
3.10.2 实战演练 83
3.10.3 工作原理 84
3.11 环回文件与挂载 84
3.11.1 预备知识 85
3.11.2 实战演练 85
3.11.3 补充内容 86
3.12 生成ISO 文件及混合ISO 87
3.12.1 预备知识 87
3.12.2 实战演练 87
3.12.3 补充内容 87
3.13 查找文件差异并进行修补 89
3.13.1 实战演练 89
3.13.2 补充内容 90
3.14 head 与tail —— 打印文件的前10 行和后10 行 90
3.15 只列出目录的其他方法 92
3.15.1 预备知识 93
3.15.2 实战演练 93
3.16 在命令行中用pushd 和popd快速定位 93
3.16.1 预备知识 93
3.16.2 实战演练 93
3.16.3 补充内容 94
3.17 统计文件的行数、单词数和字符数 95
3.17.1 预备知识 95
3.17.2 实战演练 95
3.17.3 补充知识 95
3.18 打印目录树 96
3.18.1 预备知识 96
3.18.2 实战演练 96
3.18.3 补充内容 97
第4 章 让文本飞 98
4.1 简介 98
4.2 正则表达式入门 99
4.2.1 预备知识 99
4.2.2 实战演练 99
4.2.3 工作原理 100
4.2.4 补充内容 101
4.3 用grep 在文件中搜索文本 101
4.3.1 预备知识 101
4.3.2 实战演练 101
4.3.3 补充内容 103
4.4 用cut 按列切分文件 107
4.4.1 预备知识 107
4.4.2 实战演练 107
4.4.3 补充内容 108
4.5 统计特定文件中的词频 109
4.5.1 预备知识 109
4.5.2 实战演练 109
4.5.3 工作原理 110
4.5.4 参考 110
4.6 sed 入门 110
4.6.1 实战演练 111
4.6.2 补充内容 111
4.7 awk 入门 113
4.7.1 实战演练 113
4.7.2 工作原理 113
4.7.3 补充内容 114
4.8 替换文本或文件中的字符串 117
4.8.1 预备知识 117
4.8.2 实战演练 118
4.8.3 补充内容 118
4.8.4 参考 118
4.9 压缩或解压缩JavaScript 119
4.9.1 预备知识 119
4.9.2 工作原理 119
4.9.3 工作原理 120
4.9.4 参考 121
4.10 对文件中的行、单词和字符进行迭代 121
4.10.1 预备知识 121
4.10.2 实战演练 121
4.10.3 工作原理 122
4.10.4 参考 122
4.11 按列合并文件 122
4.11.1 工作原理 122
4.11.2 参考 123
4.12 打印文件或行中的第n 个单词或列 123
4.12.1 预备知识 123
4.12.2 实战演练 123
4.12.3 参考 124
4.13 打印不同行或样式之间的文本 124
4.13.1 预备知识 124
4.13.2 实战演练 124
4.13.3 参考 125
4.14 用脚本检验回文字符串 125
4.14.1 预备知识 125
4.14.2 工作原理 125
4.14.3 工作原理 126
4.14.4 补充内容 127
4.14.5 参考 128
4.15 以逆序形式打印行 128
4.15.1 预备知识 128
4.15.2 实战演练 128
4.15.3 工作原理 129
4.15.4 参考 129
4.16 解析文本中的电子邮件地址和URL 129
4.16.1 预备知识 129
4.16.2 实战演练 129
4.16.3 工作原理 130
4.16.4 参考 130
4.17 打印文件中某个样式之前或之后的n 行 130
4.17.1 预备知识 131
4.17.2 实战演练 131
4.17.3 参考 132
4.18 在文件中移除包含某个单词的句子 132
4.18.1 预备知识 132
4.18.2 实战演练 132
4.18.3 工作原理 133
4.18.4 参考 133
4.19 用awk 实现head、tail 和tac 133
4.19.1 预备知识 133
4.19.2 实战演练 133
4.19.3 工作原理 134
4.19.4 参考 134
4.20 文本切片与参数操作 134
4.20.1 实战演练 134
4.20.2 参考 135
第5 章 一团乱麻?没这回事 136
5.1 入门 136
5.2 网站下载 136
5.2.1 预备知识 136
5.2.2 实战演练 136
5.2.3 补充内容 137
5.3 以格式化纯文本形式下载网页 138
5.4 cURL 入门 139
5.4.1 预备知识 139
5.4.2 实战演练 139
5.4.3 补充内容 140
5.4.4 参考 142
5.5 从命令行访问Gmail 142
5.5.1 实战演练 142
5.5.2 工作原理 143
5.5.3 参考 144
5.6 解析网站数据 144
5.6.1 实战演练 144
5.6.2 工作原理 144
5.6.3 参考 145
5.7 制作图片抓取器及下载工具 145
5.7.1 实战演练 145
5.7.2 工作原理 146
5.7.3 参考 147
5.8 网页相册生成器 147
5.8.1 预备知识 147
5.8.2 实战演练 147
5.8.3 工作原理 148
5.8.4 参考 149
5.9 Twitter 命令行客户端 149
5.9.1 预备知识 149
5.9.2 实战演练 149
5.9.3 工作原理 150
5.9.4 参考 150
5.10 基于Web 后端的定义查询工具 151
5.10.1 预备知识 151
5.10.2 实战演练 151
5.10.3 工作原理 152
5.10.4 参考 152
5.11 查找网站中的无效链接 152
5.11.1 预备知识 152
5.11.2 实战演练 153
5.11.3 工作原理 153
5.11.4 参考 153
5.12 跟踪网站变更 154
5.12.1 预备知识 154
5.12.2 实战演练 154
5.12.3 工作原理 155
5.12.4 参考 155
5.13 以POST 方式发送网页并读取响应 155
5.13.1 预备知识 156
5.13.2 实战演练 156
5.13.3 补充内容 157
5.13.4 参考 157
第6 章 B 计划 158
6.1 简介 158
6.2 用tar 归档 158
6.2.1 预备知识 158
6.2.2 实战演练 159
6.2.3 补充知识 159
6.2.4 参考 163
6.3 用cpio 归档 163
6.4 用gunzip 或gzip 压缩 164
6.4.1 实战演练 164
6.4.2 补充内容 164
6.4.3 参考 166
6.5 用bunzip 或bzip 压缩 166
6.5.1 实战演练 166
6.5.2 补充内容 167
6.5.3 参考 168
6.6 用lzma 压缩 168
6.6.1 实战演练 168
6.6.2 补充内容 169
6.6.3 参考 169
6.7 用zip 归档和压缩 169
6.8 超高压缩率的squashfs 文件系统 170
6.8.1 预备知识 171
6.8.2 实战演练 171
6.8.3 补充内容 171
6.9 加密工具与散列 172
6.10 用raync 备份系统快照 174
6.10.1 实战演练 174
6.10.2 补充内容 175
6.11 用Git 备份版本控制 176
6.11.1 预备知识 176
6.11.2 实战演练 176
6.12 用dd 克隆磁盘 178
6.12.1 预备知识 179
6.12.2 实战演练 179
6.12.3 补充内容 180
6.12.4 参考 180
第7 章 无网不利 181
7.1 简介 181
7.2 联网知识入门 181
7.2.1 新手上路 181
7.2.2 实战演练 182
7.2.3 补充内容 182
7.2.4 参考 186
7.3 使用ping 186
7.3.1 实战演练 186
7.3.2 补充内容 187
7.4 列出网络上所有的活动主机 188
7.4.1 新手上路 188
7.4.2 实战演练 188
7.4.3 工作原理 189
7.4.4 补充内容 191
7.4.5 参考 191
7.5 传输文件 191
7.5.1 新手上路 191
7.5.2 实战演练 191
7.5.3 补充内容 192
7.5.4 参考 194
7.6 用脚本设置以太网与无线LAN 194
7.6.1 新手上路 194
7.6.2 实战演练 194
7.6.3 工作原理 196
7.6.4 参考 196
7.7 用SSH 实现无密码自动登录 196
7.8 用SSH 在远程主机上运行命令 198
7.8.1 新手上路 198
7.8.2 实战演练 198
7.8.3 补充内容 200
7.8.4 参考 200
7.9 在本地挂载点上挂载远程驱动器 201
7.9.1 新手上路 201
7.9.2 实战演练 201
7.9.3 参考 201
7.10 在网络上发送多播式窗口消息 201
7.10.1 新手上路 201
7.10.2 实战演练 201
7.10.3 工作原理 202
7.10.4 参考 203
7.11 网络流量与端口分析 203
7.11.1 新手上路 203
7.11.2 实战演练 203
7.11.3 补充内容 204
第8 章 当个好管家 205
8.1 简介 205
8.2 统计磁盘的使用情况 205
8.2.1 新手上路 206
8.2.2 实战演练 206
8.2.3 补充内容 206
8.3 计算命令执行时间 210
8.4 与当前登录用户、启动日志及启动故障的相关信息 212
8.4.1 新手上路 212
8.4.2 实战演练 212
8.5 打印出10 条最常使用的命令 214
8.5.1 新手上路 214
8.5.2 实战演练 214
8.5.3 工作原理 215
8.6 列出1 小时内占用CPU 最多的10 个进程 215
8.6.1 新手上路 215
8.6.2 实战演练 215
8.6.3 工作原理 216
8.6.4 参考 217
8.7 用watch 监视命令输出 217
8.7.1 实战演练 217
8.7.2 补充内容 217
8.8 对文件及目录访问进行记录 218
8.8.1 新手上路 218
8.8.2 实战演练 218
8.8.3 工作原理 218
8.9 用logrotate 管理日志文件 219
8.9.1 新手上路 219
8.9.2 实战演练 219
8.10 用syslog 记录日志 220
8.10.1 新手上路 220
8.10.2 实战演练 221
8.10.3 参考 221
8.11 通过监视用户登录找出入侵者 221
8.11.1 新手上路 222
8.11.2 实战演练 222
8.11.3 工作原理 223
8.12 监视远程磁盘的健康情况 224
8.12.1 新手上路 224
8.12.2 实战演练 224
8.12.3 工作原理 225
8.12.4 参考 226
8.13 找出系统中用户的活动时段 226
8.13.1 新手上路 226
8.13.2 实战演练 226
8.13.3 工作原理 227
第9 章 管理重任 228
9.1 简介 228
9.2 收集进程信息 228
9.2.1 新手上路 228
9.2.2 实战演练 229
9.2.3 补充内容 231
9.2.4 参考 234
9.3 杀死进程以及发送或响应信号 234
9.3.1 新手上路 235
9.3.2 实战演练 235
9.3.3 补充内容 235
9.4 which、whereis、file、whatis 与平均负载 237
9.5 向用户终端发送消息 238
9.5.1 新手上路 239
9.5.2 实战演练 239
9.5.3 工作原理 240
9.6 收集系统信息 240
9.7 用/proc 收集信息 241
9.8 用cron 进行调度 242
9.8.1 新手上路 242
9.8.2 实战演练 242
9.8.3 补充内容 243
9.9 从Bash 中读写MySQL 数据库 244
9.9.1 新手上路 244
9.9.2 实战演练 244
9.9.3 工作原理 247
9.10 用户管理脚本 248
9.10.1 实战演练 248
9.10.2 工作原理 249
9.11 图像文件的批量缩放及格式转换 251
9.11.1 新手上路 251
9.11.2 实战演练 251
9.11.3 工作原理 253
9.11.4 参考 254
· · · · · · (收起)
丛书信息
· · · · · ·
喜欢读"Linux Shell脚本攻略"的人也喜欢的电子书 · · · · · ·
喜欢读"Linux Shell脚本攻略"的人也喜欢 · · · · · ·
- Python高级编程 7.6
- UNIX环境高级编程 9.4
- 编程珠玑 9.1
- 正则指引 8.6
- sed与awk 7.9
- Shell脚本学习指南 7.4
- 编写可读代码的艺术 8.7
- C专家编程 9.2
- Vim实用技巧 9.1
Linux Shell脚本攻略的书评 · · · · · · ( 全部 13 条 )
应该系统的学习下 Shell, 而这本书还是相当新的
这篇书评可能有关键情节透露
(我读的是英文 Second Edition, 没读完...) 很好,很受益。 我写了很长很全面的笔记。相当于全书的压缩版,(我读了的那部分) http://tangzx.qiniudn.com/post-0024-linux-shell-scripting-cookbook.html 外,虽然是新书(在 Linux Shell Scripting 中经典的似乎都是 GNU ... (展开)这部书应该叫《Linux Shell常用命令汇总》
这篇书评可能有关键情节透露
第1章 小试牛刀 cat /proc/$PID/environ | tr '\0' '\n' 可以生成某进程相关的环境变量。 $var 或者 ${var}可以引用变量。${#var}可以获取var字符串的值的长度。 $0表示当前shell。$UID表示用户ID,为0时是root用户。 可通过修改PS1变量来更改Bash的提示字符串。 shell参数扩展... (展开)想系统学习Shell编程的人,还是别看了
> 更多书评 13篇
论坛 · · · · · ·
读起来不爽 | 来自mindfledged | 2014-04-24 12:19:07 | |
本书勘误 | 来自iLRainyday | 9 回应 | 2013-11-06 17:34:45 |
本书的新浪微群 | 来自iLRainyday | 3 回应 | 2011-11-23 22:20:32 |
这本书的其他版本 · · · · · · ( 全部6 )
-
Packt Publishing (2011)7.7分 33人读过
-
人民邮电出版社 (2013)8.3分 97人读过
-
人民邮电出版社 (2018)7.8分 30人读过
-
Packt Publishing (2013)8.0分 11人读过
以下书单推荐 · · · · · · ( 全部 )
- 程序设计丛书 (敏子爱书)
- 2011 书单(CS学习) (催眠)
- 图书馆待借阅 (养鸭专业户)
- Linux系统相关 (heloo)
- 我的书单 (thinkinnight)
谁读这本书? · · · · · ·
二手市场
· · · · · ·
订阅关于Linux Shell脚本攻略的评论:
feed: rss 2.0
0 有用 催眠 2011-12-02 09:35:39
让我对Shell爱不释手
3 有用 厚积薄发 2012-04-19 21:08:31
做什么都要和牛人一起,无聊的东西也会变得特别有趣,bash其实是比较麻烦的东西,虽然bash很强悍,但是,就是麻烦到蛋疼,比如if语句的[]必须有空格之类。Lakshman是Linux天才级的程序员,书中各种好玩的应用,好玩的场景,见证了linux shell无敌的强大,小菜如俺,收获实在太多!
0 有用 Rayleigh! 2012-03-01 21:53:45
非常实在。等我过两天吧笔记发上来。
0 有用 不吐槽会死星人 2013-09-12 08:27:42
很实用,不舍得卖掉
0 有用 weakish 2013-11-23 14:37:57
隨便翻下,槽點太多。`#!/bin/bash -xv`這種奇技淫巧有什麼好介紹的,checksum居然只講md5和sha1……總的來說,雜亂而羅嗦。
0 有用 小y箭塔流 2022-06-30 15:09:57
不够系统,只能作为熟悉Linux系统之后的一个技巧升级笔记。
0 有用 Laisky 2022-06-10 19:03:25
挺不错的
0 有用 树上的卡尔维诺 2022-04-28 00:21:41
越往后看越没有耐心 速度也加快 不过算是我今年以来看完的第一本技术书籍 开了个好头 再多练习一下 可以找老板一雪前耻了
0 有用 星星的轻声细语 2020-12-18 09:42:06
感觉内容一般,不适合新手。
0 有用 道满 2020-10-18 16:17:41
讨厌这种不求甚解的书