序 1
前言 3
第1章 Python简介 11
为什么要选Python 11
学习的动力 17
一些基础知识 18
在Python中执行命令 19
在Python中使用函数 23
通过Import语句实现代码复用 26
第2章 IPython 31
安装IPython 32
基础知识 33
从功能强大的函数获得帮助 40
UNIX Shell 44
信息搜集 61
自动和快捷方式 74
本章小结 79
第3章 文本 80
Python的内建功能及模块 80
ElementTree 124
本章小结 127
第4章 文档与报告 129
自动信息收集 129
手工信息收集 132
信息格式化 141
信息发布 147
本章小结 151
第5章 网络 152
网络客户端 152
远程过程调用 163
SSH 169
Twisted 171
Scapy 177
使用Scapy创建脚本 179
第6章 数据 182
引言 182
使用OS模块与Data进行交互 183
拷贝、移动、重命名和删除数据 184
使用路径、目录和文件 186
数据比较 189
合并数据 192
对文件和目录的模式匹配 197
包装rsync 199
元数据:关于数据的数据 200
存档、压缩、映像和恢复 202
使用tarfile模块创建TAR归档 203
使用tarfile模块检查TAR文件内容 205
第7章 SNMP 208
引言 208
对SNMP的简要介绍 208
IPython与Net-SNMP 211
查找数据中心 214
使用Net-SNMP获取多个值 217
创建混合的SNMP工具 222
Net-SNMP扩展 224
SNMP设备控制 227
整合Zenoss的企业级SNMP 228
第8章 操作系统什锦 229
引言 229
Python中跨平台的UNIX编辑 230
PyInotify 240
OS X 241
Red Hat Linux系统管理 246
Ubuntu管理 246
Solaris系统管理 247
虚拟化 247
云计算 248
使用Zenoss从Linux上管理Windows服务器 255
第9章 包管理 258
引言 258
Setuptools和Python Egg 259
使用easy_install 259
easy_install的高级特征 261
创建egg 267
进入点及控制台脚本 271
使用Python包索引注册一个包 272
Distutils 274
Buildout 276
使用Buildout 277
使用Buildout进行开发 280
virtualenv 280
EPM包管理 285
EPM总结:真的非常简单 289
第10章 进程与并发 290
引言 290
子进程 290
使用Supervisor来管理进程 299
使用Screen来管理进程 301
Python中的线程 302
进程 313
Processing模块 314
调度Python进程 317
daemonizer 318
本章小结 321
第11章 创建GUI 322
GUI创建理论 322
生成一个简单的PyGTK应用 323
使用PyGTK创建Apache日志浏览器 325
使用Curses创建Apache日志浏览器 329
Web应用 332
Django 333
本章小结 351
第12章 数据持久性 353
简单序列化 353
关系序列化 372
本章小结 381
第13章 命令行 382
引言 382
基本标准输入的使用 383
Optparse简介 384
简单的Optparse使用模式 385
Unix Mashups:整合Shell命令到Python命令行工具中 392
整合配置文件 397
本章小结 399
第14章 实例 400
使用Python管理DNS 400
使用OpenLDAP、Active Directory以及其他Python工具实现LDAP 402
Apache日志报告 404
FTP镜像 410
附录 回调 415