图书介绍

Linux命令、编辑器与shell编程 第3版PDF|Epub|txt|kindle电子书版本下载

Linux命令、编辑器与shell编程 第3版
  • (美)索贝尔著 著
  • 出版社: 北京:清华大学出版社
  • ISBN:9787302329282
  • 出版时间:2013
  • 标注页数:983页
  • 文件大小:206MB
  • 文件页数:1012页
  • 主题词:Linux操作系统-程序设计

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

Linux命令、编辑器与shell编程 第3版PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第1章 欢迎进入Linux和Mac OS X世界1

1.1 UNIX和GNU-Linux的发展史2

1.1.1 Linux的起源:UNIX2

1.1.2 回顾1983年3

1.1.3 下一场景,1991年3

1.1.4 自由代码4

1.1.5 享受乐趣5

1.2 Linux的优点5

1.2.1 Linux在硬件公司和开发人员中流行的原因7

1.2.2 Linux的可移植性8

1.2.3 C编程语言8

1.3 Linux概述9

1.3.1 Linux具有内核编程接口9

1.3.2 Linux支持多用户10

1.3.3 Linux支持多任务10

1.3.4 Linux支持安全的分层文件系统10

1.3.5 shell:命令解释器和编程语言11

1.3.6 大量有用的实用程序12

1.3.7 进程间的通信13

1.3.8 系统管理13

1.4 Linux的其他特性13

1.4.1 GUI:图形用户界面13

1.4.2 (互联的)网络实用程序14

1.4.3 软件开发14

1.5 本章小结15

练习15

第Ⅰ部分 Linux和Mac OS X操作系统19

第2章 入门19

2.1 本书约定20

2.2 从终端或终端模拟器登录21

2.3 在命令行中工作22

2.3.1 识别当前运行的是哪种shell23

2.3.2 校正错误23

2.3.3 重复/编辑命令行25

2.4 su/sudo:慎用root权限26

2.5 如何查找相关文档27

2.5.1 man:显示系统手册页27

2.5.2 apropos:搜索关键字29

2.5.3 info:显示实用程序的相关信息30

2.5.4 --help选项32

2.5.5 bash help命令32

2.5.6 获取帮助33

2.6 关于登录和密码的更多方面35

2.6.1 如何处理登录失败36

2.6.2 远程登录:终端模拟器、ssh和拨号连接36

2.6.3 使用虚拟控制台37

2.6.4 退出37

2.6.5 更改密码37

2.7 本章小结39

练习39

高级练习40

第3章 实用程序41

3.1 特殊字符42

3.2 基本工具43

3.2.1 ls:显示文件名43

3.2.2 cat:显示文本文件内容44

3.2.3 rm:删除文件44

3.2.4 少即多:分屏显示文本文件44

3.2.5 hostname:显示系统名45

3.3 文件操作45

3.3.1 cp:复制文件45

3.3.2 mv:更改文件名46

3.3.3 lpr:打印文件47

3.3.4 grep:查找字符串47

3.3.5 head:显示文件头部48

3.3.6 tail:显示文件尾部49

3.3.7 sort:按顺序显示文件内容49

3.3.8 uniq:忽略文件中重复的行50

3.3.9 diff:比较两个文件50

3.3.10 file:识别文件内容51

3.4 (管道):实现进程间的通信51

3.5 4个有用的实用程序52

3.5.1 echo:显示文本52

3.5.2 date:显示日期和时间53

3.5.3 script:记录shell会话信息53

3.5.4 unix2dos:将Linux文件转换为Windows和Macintosh OS X格式54

3.6 压缩和归档文件55

3.6.1 bzip2:压缩文件55

3.6.2 bzcat和bunzip2:解压缩文件56

3.6.3 gzip:压缩文件56

3.6.4 tar:打包和解包文件57

3.7 定位实用程序59

3.7.1 which和whereis:定位实用程序59

3.7.2 locate:搜索文件61

3.8 显示用户和系统信息61

3.8.1 who:列出系统上的用户62

3.8.2 finger:列出系统上的用户62

3.8.3 uptime:显示系统负载和持续运行时间信息64

3.8.4 w:列出系统上的用户64

3.8.5 free:显示内存使用信息64

3.9 与其他用户通信65

3.9.1 write:发送消息65

3.9.2 mesg:拒绝或接受消息66

3.10 电子邮件66

3.11 本章小结67

练习69

高级练习69

第4章 Linux文件系统71

4.1 分层文件系统72

4.2 目录文件和普通文件73

4.2.1 文件名74

4.2.2 工作目录76

4.2.3 主目录76

4.3 路径名76

4.3.1 绝对路径名77

4.3.2 相对路径名78

4.4 目录操作79

4.4.1 mkdir:创建目录79

4.4.2 cd:更改工作目录80

4.4.3 rmdir:删除目录82

4.4.4 使用路径名82

4.4.5 mv/cp:移动/复制文件83

4.4.6 mv:移动目录84

4.4.7 重要的标准目录和文件84

4.5 访问权限86

4.5.1 ls-l:显示访问权限86

4.5.2 chmod:改变访问权限87

4.5.3 setuid和setgid权限89

4.5.4 目录访问权限91

4.6 ACL:访问控制列表92

4.6.1 启用ACL92

4.6.2 处理访问规则93

4.6.3 设置目录的默认规则95

4.7 链接97

4.7.1 硬链接98

4.7.2 符号链接100

4.7.3 rm:删除链接102

4.7.4 解引用符号链接103

4.8 本章小结106

练习107

高级练习109

第5章 shell111

5.1 命令行112

5.1.1 简单命令112

5.1.2 语法112

5.1.3 处理命令行116

5.1.4 执行命令行117

5.1.5 编辑命令行118

5.2 标准输入和输出118

5.2.1 作为文件的屏幕119

5.2.2 作为标准输入的键盘和作为标准输出的屏幕119

5.2.3 重定向120

5.2.4 管道125

5.2.5 链129

5.3 在后台运行命令130

5.4 生成文件名/扩展路径名131

5.4.1 特殊字符“?”132

5.4.2 特殊字符“*”133

5.4.3 特殊字符“[]”134

5.5 内置命令136

5.6 本章小结136

练习137

高级练习138

第Ⅱ部分 编辑器143

第6章 vim编辑器143

6.1 历史144

6.2 入门:用vim创建和编辑文件145

6.2.1 启动vim145

6.2.2 命令模式和输入模式146

6.2.3 输入文本147

6.2.4 获取帮助148

6.2.5 结束编辑会话150

6.2.6 compatible参数151

6.3 介绍vim的特性151

6.3.1 联机帮助151

6.3.2 术语152

6.3.3 操作模式152

6.3.4 显示153

6.3.5 输入模式下校正文本153

6.3.6 工作缓冲区153

6.3.7 行长度与文件大小154

6.3.8 窗口154

6.3.9 锁定文件154

6.3.10 非正常结束编辑会话155

6.3.11 崩溃后的文本恢复155

6.4 在命令模式下移动光标157

6.4.1 按字符移动光标157

6.4.2 将光标移到某个特定字符158

6.4.3 按字移动光标158

6.4.4 按行移动光标158

6.4.5 按句子和段落移动光标159

6.4.6 在屏幕内移动光标159

6.4.7 查看工作缓冲区的不同部分159

6.5 输入模式160

6.5.1 插入文本160

6.5.2 追加文本160

6.5.3 为输入文本打开行161

6.5.4 替换文本161

6.5.5 在输入模式下转义特殊字符161

6.6 在命令模式下删除和修改文本161

6.6.1 撤消修改162

6.6.2 删除字符162

6.6.3 删除文本162

6.6.4 修改文本163

6.6.5 替换文本164

6.6.6 修改大小写165

6.7 查找和替换165

6.7.1 查找字符165

6.7.2 查找字符串165

6.7.3 字符串的替换167

6.8 其他命令170

6.8.1 连接命令170

6.8.2 状态命令170

6.8.3 (句点)170

6.9 复制、移动和删除文本170

6.9.1 通用缓冲区170

6.9.2 命名缓冲区171

6.9.3 编号缓冲区172

6.10 文件的读写172

6.10.1 读文件172

6.10.2 写文件173

6.10.3 识别当前文件173

6.11 参数设置173

6.11.1 在vim中设置参数174

6.11.2 在启动文件中设置参数174

6.11.3. vimrc启动文件174

6.11.4 参数175

6.12 高级编辑技巧178

6.12.1 使用标记178

6.12.2 编辑其他文件179

6.12.3 宏与快捷键179

6.12.4 在vim中执行shell命令180

6.13 度量单位181

6.13.1 字符181

6.13.2 字182

6.13.3 空白分隔字182

6.13.4 行182

6.13.5 句子183

6.13.6 段落183

6.13.7 屏幕(窗口)184

6.13.8 重复因子184

6.14 本章小结184

练习188

高级练习189

第7章 emacs编辑器191

7.1 历史192

7.1.1 演化192

7.1.2 emacs与vim193

7.2 入门:开始使用emacs194

7.2.1 启动emacs194

7.2.2 退出emacs196

7.2.3 插入文本196

7.2.4 删除字符196

7.2.5 移动光标197

7.2.6 在光标处编辑199

7.2.7 保存和检索缓冲区中的内容199

7.3 基本编辑命令200

7.3.1 按键的表示与使用200

7.3.2 键序列和命令201

7.3.3 META+x:运行不带绑定键的命令202

7.3.4 数值参数202

7.3.5 编辑点与光标202

7.3.6 在缓冲区中滚动203

7.3.7 删除文本203

7.3.8 搜索文本203

7.3.9 通过键盘使用菜单栏205

7.4 联机帮助206

7.5 高级编辑208

7.5.1 撤消修改208

7.5.2 编辑点、标记和区域209

7.5.3 剪切与粘贴:移出已剪切文本211

7.5.4 插入特殊字符212

7.5.5 全局缓冲区命令212

7.5.6 访问和保存文件214

7.5.7 缓冲区217

7.5.8 窗口218

7.5.9 前台shell命令220

7.5.10 后台shell命令220

7.6 主模式:区分语言的编辑221

7.6.1 选择主模式221

7.6.2 自然语言模式222

7.6.3 C模式224

7.6.4 定制缩进226

7.6.5 注释227

7.6.6 专用模式228

7.7 定制emacs229

7.7.1 .emacs启动文件230

7.7.2 重映射键230

7.7.3 .emacs文件示例232

7.8 更多信息233

7.9 本章小结233

练习240

高级练习241

第Ⅲ部分 shell245

第8章 bash245

8.1 背景知识246

8.2 启动文件247

8.2.1 登录shell247

8.2.2 交互式非登录shell248

8.2.3 非交互式shell248

8.2.4 建立启动文件249

8.2.5 “.”(句点)或source:在当前shell中运行启动文件250

8.3 符号命令251

8.4 重定向标准错误251

8.5 编写和执行简单的shell脚本254

8.5.1 chmod:使文件可执行254

8.5.2 “#!”指定shell256

8.5.3 “#”开始一行注释257

8.5.4 执行shell脚本257

8.6 控制操作符:命令分隔和命令分组258

8.6.1 使用分号和换行符分隔命令258

8.6.2 “|”和“&”分隔命令及其他功能259

8.6.3 布尔控制操作符&&和‖260

8.6.4 ()命令分组261

8.6.5 “\”继续命令262

8.7 作业控制262

8.7.1 jobs:列出作业263

8.7.2 fg:将作业移到前台运行263

8.7.3 挂起作业264

8.7.4 bg:将作业移到后台运行264

8.8 操作目录栈265

8.8.1 dirs:显示栈265

8.8.2 pushd:将目录压入栈中266

8.8.3 popd:将目录从栈中弹出267

8.9 参数和变量267

8.9.1 用户创建的变量269

8.9.2 变量属性271

8.9.3 关键字变量273

8.10 特殊字符281

8.11 locale282

8.12 时间285

8.13 进程288

8.13.1 进程结构288

8.13.2 进程标识289

8.13.3 执行命令290

8.14 历史机制291

8.14.1 控制历史机制的变量291

8.14.2 重新执行和编辑命令293

8.14.3 Readline库300

8.15 别名306

8.15.1 别名中的单引号和双引号306

8.15.2 别名示例307

8.16 函数309

8.17 控制bash的功能和选项312

8.17.1 bash命令行选项312

8.17.2 shell的功能313

8.18 处理命令行315

8.18.1 历史扩展316

8.18.2 别名替换316

8.18.3 解析和扫描命令行316

8.18.4 命令行扩展316

8.19 本章小结325

练习326

高级练习328

第9章 tsch331

9.1 shell脚本332

9.2 进入和退出tcsh333

9.3 bash与tcsh的共性335

9.3.1 命令行扩展(替换)335

9.3.2 作业控制340

9.3.3 文件名替换340

9.3.4 操作目录栈340

9.3.5 命令替换340

9.4 重定向标准错误341

9.5 操作命令行342

9.5.1 字补全342

9.5.2 编辑命令行344

9.5.3 校正拼写345

9.6 变量346

9.6.1 变量替换347

9.6.2 字符串变量347

9.6.3 字符串变量数组348

9.6.4 数值变量349

9.6.5 花括号351

9.6.6 特殊的变量形式351

9.6.7 tcsh变量352

9.7 控制结构357

9.7.1 if357

9.7.2 goto360

9.7.3 中断处理360

9.7.4 if...then...else361

9.7.5 foreach362

9.7.6 while363

9.7.7 break和continue364

9.7.8 switch364

9.8 内置命令365

9.9 本章小结368

练习369

高级练习370

第Ⅳ部分 编程工具375

第10章 bash程序设计375

10.1 控制结构376

10.1.1 if...then376

10.1.2 if.then...else380

10.1.3 if...then...elif381

10.1.4 for...in387

10.1.5 for390

10.1.6 while392

10.1.7 until395

10.1.8 break与continue397

10.1.9 case398

10.1.10 select404

10.1.11 Here文档406

10.2 文件描述符408

10.2.1 打开文件描述符408

10.2.2 复制文件描述符408

10.2.3 文件描述符示例409

10.2.4 确定文件描述符是否与终端关联411

10.3 参数413

10.3.1 位置参数413

10.3.2 特殊参数418

10.4 变量422

10.4.1 shell变量422

10.4.2 环境、环境变量和继承422

10.4.3 扩展空变量和未赋值的变量427

10.4.4 数组变量428

10.4.5 函数中的变量429

10.5 内置命令431

10.5.1 type:显示命令的相关信息431

10.5.2 read:接受用户输入431

10.5.3 exec:执行命令或重定向文件描述符435

10.5.4 trap:捕获信号437

10.5.5 kill:终止进程440

10.5.6 eval:扫描、赋值并执行命令行441

10.5.7 getopts:解析选项442

10.5.8 部分内置命令列表444

10.6 表达式445

10.6.1 算术表达式445

10.6.2 逻辑表达式(条件表达式)446

10.6.3 字符串模式匹配447

10.6.4 运算符448

10.7 隐式命令行延续451

10.8 shell程序452

10.8.1 递归的shell脚本453

10.8.2 shell的quiz脚本456

10.9 本章小结462

练习463

高级练习465

第11章 Perl脚本语言467

11.1 Perl简介468

11.1.1 更多信息468

11.1.2 帮助469

11.1.3 perldoc469

11.1.4 术语471

11.1.5 运行Perl程序471

11.1.6 语法473

11.2 变量475

11.2.1 标量变量477

11.2.2 数组变量478

11.2.3 哈希变量481

11.3 控制结构482

11.3.1 if/unless482

11.3.2 if...else484

11.3.3 if...elsif...else485

11 3.4 foreach/for485

11.3.5 last和next487

11 3.6 while/until488

11.4 处理文件490

11.5 排序493

11.6 子例程494

11.7 正则表达式497

11.8 CPAN模块502

11.9 示例504

11.10 本章小结507

练习507

高级练习508

第12章 Python编程语言509

12.1 简介510

12.1.1 调用Python510

12.1.2 更多信息512

12.1.3 写标准输出与读标准输入513

12.1.4 函数和方法513

12.2 标量变量、列表和字典514

12.2.1 标量变量514

12.2.2 列表515

12.2.3 字典518

12.3 控制结构520

12.3.1 if520

12.3.2 if...else521

12.3.3 if...elif...else521

12.3.4 while522

12.3.5 for523

12.4 读写文件524

12.4.1 文件输入和输出524

12.4.2 异常处理526

12.4.3 pickle模块527

12.5 正则表达式528

12.6 定义函数530

12.7 使用库530

12.7.1 标准库531

12.7.2 非标准库531

12.7.3 SciPy和NumPy库531

12.7.4 命名空间531

12.7.5 导入模块532

12.7.6 导入函数示例533

12.8 Lambda函数534

12.9 列表推导535

12.10 本章小结536

练习537

高级练习537

第13章 MySQL数据库管理系统539

13.1 注意540

13.1.1 语法和惯例541

13.1.2 更多信息542

13.2 安装MySQL服务器和客户端543

13.2.1 Fedora/RHEL(Red HatEnterprise Linux)543

13.2.2 Debian/Ubuntu/Mint543

13.2.3 OpenSUSE543

13.2.4 OS X544

13.3 客户端选项544

13.4 配置MySQL544

13.4.1 为MySQL root用户指定密码545

13.4.2 删除匿名用户545

13.4.3 运行安全安装脚本545

13.4.4 ~/.my.cnf:配置MySQL客户端545

13.4.5 ~/.mysql_history:保存MySQL历史546

13.5 创建数据库546

13.6 添加用户547

13.7 一些示例548

13.7.1 登录548

13.7.2 创建表549

13.7.3 添加数据550

13.7.4 获取数据551

13.7.5 备份数据库553

13.7.6 修改数据554

13.7.7 创建第二个表554

13.7.8 连接查询556

13.8 本章小结560

练习560

第14章 AWK模式处理语言563

14.1 语法564

14.2 参数564

14.3 选项565

14.4 注意565

14.5 语言基础565

14.5.1 模式566

14.5.2 动作566

14.5.3 注释567

14.5.4 变量567

14.5.5 函数568

14.5.6 算术运算符568

14.5.7 关联数组569

14.5.8 printf569

14.5.9 控制结构570

14.6 示例572

14.7 gawk高级编程589

14.7.1 getline:控制输入589

14.7.2 协进程:双向I/O591

14.7.3 从网络获取输入593

14.8 本章小结594

练习594

高级练习594

第15章 sed编辑器595

15.1 语法596

15.2 参数596

15.3 选项596

15.4 编辑器基础596

15.4.1 地址597

15.4.2 指令597

15.4.3 控制结构598

15.4.4 暂存空间599

15.5 示例599

15.6 本章小结609

练习609

第Ⅴ部分 安全的网络实用程序613

第16章 rsync安全复制实用程序613

16.1 语法614

16.2 参数614

16.3 选项614

16.3.1 注意616

16.3.2 更多信息616

16.4 示例616

16.4.1 使用source-file尾部的斜杠(/)617

16.4.2 删除文件618

16.4.3 在远程系统上复制文件619

16.4.4 镜像目录620

16.4.5 生成备份621

16.4.6 恢复文件623

16.5 本章小结623

练习623

第17章 OpenSSH安全通信实用程序625

17.1 OpenSSH简介626

17.1.1 OpenSSH的工作原理627

17.1.2 文件627

17.1.3 更多信息628

17.2 运行OpenSSH客户端ssh、scp和sftp628

17.2.1 指南:使用ssh和scp连接到OpenSSH服务器629

17.2.2 配置OpenSSH客户端629

17.2.3 ssh:登录或者在远程系统中执行命令631

17.2.4 scp:与远程系统互相复制文件635

17.2.5 sftp:安全的ftp客户端637

17.2.6 ~/.ssh/config和/etc/ssh/ssh_config配置文件637

17.2.7 认证密钥:自动登录638

17.2.8 ssh-agent:保存你的私钥641

17.3 隧道/端口转发642

17.3.1 转发X11642

17.3.2 端口转发643

17.4 本章小结644

练习644

高级练习644

第Ⅵ部分 命令参考647

第18章 命令参考647

18.1 标准倍数后缀651

18.2 常见选项652

18.3 sample实用程序652

18.4 sample(OS X)653

18.5 aspell654

18.6 at658

18.7 busybox661

18.8 bzip2664

18.9 cal666

18.10 cat667

18.11 cd669

18.12 chgrp670

18.13 chmod672

18.14 chown676

18.15 cmp678

18.16 comm680

18.17 configure682

18.18 cp683

18.19 cpio686

18.20 crontab691

18.21 cut693

18.22 date695

18.23 dd698

18.24 df700

18.25 diff702

18.26 diskutil(OS X)707

18.27 ditto(OS X)710

18.28 dmesg712

18.29 dscl(OS X)713

18.30 du715

18.31 echo718

18.32 expand/unexpand720

18.33 expr721

18.34 file725

18.35 find726

18.36 finger732

18.37 fmt734

18.38 fsck735

18.39 ftp739

18.40 gawk745

18.41 gcc745

18.42 GetFileInfo(OS X)749

18.43 grep751

18.44 gzip755

18.45 head757

18.46 ioin759

18.47 kill762

18.48 killall763

18.49 launchctl(OS X)765

18.50 less767

18.51 ln771

18.52 lpr773

18.53 ls775

18.54 make781

18.55 man787

18.56 mc790

18.57 mkdir796

18.58 mkfs797

18.59 mv800

18.60 nice802

18.61 nl803

18.62 nohup805

18.63 od805

18.64 open(OS X)809

18.65 otool(OS X)811

18.66 paste813

18.67 pax815

18.68 plutil(OS X)820

18.69 pr822

18.70 printf823

18.71 ps826

18.72 renice830

18.73 rm831

18.74 rmdir833

18.75 rsync834

18.76 scp834

18.77 screen835

18.78 sed840

18.79 SetFile(OS X)840

18.80 sleep841

18.81 sort843

18.82 split851

18.83 ssh853

18.84 sshfs/curlftpfs853

18.85 stat856

18.86 strings857

18.87 stty858

18.88 sysctl(OS X)862

18.89 tail863

18.90 tar866

18.91 tee870

18.92 telnet871

18.93 test874

18.94 top876

18.95 touch879

18.96 tr881

18.97 tty884

18.98 tune2fs885

18.99 umask887

18.100 uniq889

18.101 w891

18.102 wc892

18.103 which893

18.104 who895

18.105 xargs896

第Ⅶ部分 附录901

附录A 正则表达式901

附录B 获取帮助911

附录C 更新系统917

附录D Mac OS X注意事项931

附录E 术语表943

热门推荐