《Linux系统命令及Shell脚本实践指南》PDF下载

  • 购买积分:11 如何计算积分?
  • 作  者:王军编著
  • 出 版 社:北京:机械工业出版社
  • 出版年份:2014
  • ISBN:9787111445036
  • 页数:298 页
图书介绍:本书以由浅入深、循序渐进的方式对Linux系统及shell编程进行讲解。全书共有三个层次,第一个层次是Linux的系统学习,介绍了Linux系统中的常见命令,主要包括Linux用户管理、文件管理、文件系统、网络管理、进程管理、Linux下的软件安装、文本处理工具和编辑器等。读完相关内容读者能对常见的发行版Redhat、CentOS进行熟练操作,对如何通过命令行使用相关系统有深入的认识;第二个层次是shell编程相关知识,从基本概念着手,以丰富、实用的范例作为辅助来帮助读者掌握shell编程的语法和一些技巧;第三个层次是实用案例,其结合工作中的实际需求,给读者演示了脚本的开发过程,切合实际,可以迅速提升读者的脚本编程能力。

第1章 Linux简介 1

1.1 Linux的发展历史 1

1.2 Linux的特点 2

1.3系统安装 3

1.3.1安装前的规划 3

1.3.2安装RedHat 4

1.3.3安装CentOS 11

1.4系统登录 16

1.4.1第一次登录系统的设置 16

1.4.2使用图形模式登录 21

1.4.3使用终端模式登录 23

1.4.4开始学习使用Linux的命令 24

1.5系统启动流程 25

1.5.1系统引导概述 25

1.5.2系统运行级别 26

1.5.3服务启动脚本 27

1.5.4 Grub介绍 29

1.6获得帮助 31

1.6.1使用man page 31

1.6.2使用info page 32

1.6.3其他获得帮助的方式 32

第2章 Linux用户管理 33

2.1 Linux用户和用户组 33

2.1.1 UID和GID 33

2.1.2 /etc/passwd和/etc/shadow 34

2.2 Linux账号管理 36

2.2.1新增和删除用户 36

2.2.2新增和删除用户组 39

2.2.3检查用户信息 39

2.3切换用户 40

2.3.1切换成其他用户 40

2.3.2用其他用户的身份执行命令:sudo 41

2.4例行任务管理 43

2.4.1单一时刻执行一次任务:at 43

2.4.2周期性执行任务:cron 44

2.4.3/etc/crontab的管理 45

第3章 Linux文件管理 46

3.1文件和目录管理 46

3.1.1绝对路径和相对路径 47

3.1.2文件的相关操作 48

3.1.3目录的相关操作 51

3.1.4文件时间戳 53

3.2文件和目录的权限 54

3.2.1查看文件或目录的权限:ls-al 54

3.2.2文件隐藏属性 55

3.2.3改变文件权限:chmod 56

3.2.4改变文件的拥有者:chown 56

3.2.5改变文件的拥有组:chgrp 57

3.2.6文件特殊属性:SUID/SGID/Sticky 57

3.2.7默认权限和umask 58

3.2.8查看文件类型:file 60

3.3查找文件 60

3.3.1一般查找:find 61

3.3.2数据库查找:locate 61

3.3.3查找执行文件:which/whereis 62

3.4文件压缩和打包 63

3.4.1 gzip/gunzip 63

3.4.2 tar 63

3.4.3 bzip2 63

3.4.4 cpio 64

第4章 Linux文件系统 65

4.1文件系统 65

4.1.1什么是文件系统 65

4.1.2 ext2文件系统简介 65

4.1.3 ext3文件系统简介 66

4.2磁盘分区、创建文件系统、挂载 66

4.2.1创建文件系统:fdisk 66

4.2.2磁盘挂载:mount 69

4.2.3设置启动自动挂载:/etc/fstab 70

4.2.4磁盘检验:fsck、badblocks 70

4.3 Linux逻辑卷 71

4.3.1什么是逻辑卷 71

4.3.2如何制作逻辑卷 72

4.4硬链接和软链接 76

4.4.1什么是硬链接 76

4.4.2什么是软链接 77

第5章 字符处理 79

5.1管道 79

5.2使用grep搜索文本 79

5.3使用sort排序 80

5.4使用uniq删除重复内容 82

5.5使用cut截取文本 82

5.6使用tr做文本转换 83

5.7使用paste做文本合并 84

5.8使用split分割大文件 84

第6章 网络管理 86

6.1网络接口配置 86

6.1.1使用ifconfig检查和配置网卡 86

6.1.2将IP配置信息写入配置文件 87

6.2路由和网关设置 88

6.3 DNS客户端配置 89

6.3.1 /etc/hosts 89

6.3.2 /etc/resolv…conf 90

6.4网络测试工具 90

6.4.1 ping 90

6.4.2 host 91

6.4.3 traceroute 91

6.4.4常见网络故障排查 92

第7章 进程管理 94

7.1什么是进程 94

7.2进程和程序的区别 95

7.3进程的观察:ps、top 95

7.4进程的终止:kill、killall 98

7.5查询进程打开的文件:lsof 99

7.6进程优先级调整:nice、renice 101

第8章 Linux下的软件安装 103

8.1源码包编译安装 103

8.1.1编译、安装、打印HelloWorld程序 103

8.1.2使用源码包编译安装Apache 106

8.2 RPM安装软件 108

8.2.1什么是RPM 108

8.2.2 RPM包管理命令:rpm 109

8.2.3包依赖关系 110

8.2.4使用RPM包安装gcc 110

8.2.5使用RPM包安装Apache 112

8.3 yum安装软件 114

8.3.1 yum命令的基本用法 114

8.3.2使用yum安装Apache 115

8.3.3 RedHat使用yum的问题 115

8.3.4自建本地yum源 118

8.3.5自建网络yum源 121

8.4三种安装方法的比较 123

8.5重建RPM包 124

8.5.1创建重建环境 124

8.5.2快速重建RPM包 124

8.5.3以spec文件重建RPM包 125

8.5.4 spec文件简介 126

第9章 vi和vim编辑器 129

9.1 vi和vim编辑器简介 129

9.2 vi编辑器 129

9.2.1模式介绍 129

9.2.2案例练习 130

9.3 vim编辑器 134

9.3.1多行编辑 134

9.3.2多文件编辑 134

9.3.3使用vimtutor深入学习vim 136

9.4 gedit编辑器 137

9.4.1 gedit编辑器简介 137

9.4.2启动gedit编辑器 138

第10章 正则表达式 139

10.1正则表达式基础 139

10.1.1什么是正则表达式 139

10.1.2基础的正则表达式 140

10.1.3扩展的正则表达式 143

10.1.4通配符 144

10.2正则表达式示例 146

10.3文本处理工具sed 150

10.3.1 sed介绍 150

10.3.2删除 151

10.3.3查找替换 152

10.3.4字符转换 153

10.3.5插入文本 153

10.3.6读入文本 154

10.3.7打印 154

10.3.8写文件 154

10.3.9 sed脚本 155

10.3.10高级替换 155

10.3.11 sed总结 156

10.4文本处理工具awk 157

10.4.1打印指定域 158

10.4.2指定打印分隔符 158

10.4.3内部变量NF 159

10.4.4打印固定域 159

10.4.5截取字符串 159

10.4.6确定字符串的长度 160

10.4.7使用awk求列和 160

第11章 Shell编程概述 161

11.1 Shell简介 161

11.1.1 Shell是什么 161

11.1.2 Shell的历史 163

11.1.3 Shell的功能 164

11.1.4 Shell编程的优势 164

11.2第一个Shell脚本 164

11.2.1编辑第一个Shell脚本 164

11.2.2运行脚本 165

11.2.3 Shell脚本的排错 166

11.3 Shell的内建命令 169

第12章 Bash Shell的安装 184

12.1确定你的Shell版本 184

12.2安装bash 184

12.3使用新版本的Bash Shell 186

12.4在Windows中安装bash 187

第13章 Shell编程基础 191

13.1变量 191

13.1.1局部变量 191

13.1.2环境变量 191

13.1.3变量命名 197

13.1.4变量赋值和取值 198

13.1.5取消变量 199

13.1.6特殊变量 199

13.1.7数组 200

13.1.8只读变量 202

13.1.9变量的作用域 203

13.2转义和引用 205

13.2.1转义 205

13.2.2引用 206

13.2.3命令替换 207

13.3运算符 208

13.3.1算术运算符 209

13.3.2位运算符 209

13.3.3自增自减 211

13.4其他算术运算 211

13.4.1使用$[]做运算 211

13.4.2使用expr做运算 212

13.4.3内建运算命令declare 212

13.4.4算术扩展 213

13.4.5使用be做运算 213

13.5特殊字符 215

13.5.1通配符 215

13.5.2引号 215

13.5.3注释符 215

13.5.4大括号 216

13.5.5控制字符 217

13.5.6杂项 217

第14章 测试和判断 218

14.1测试 218

14.1.1测试结构 218

14.1.2文件测试 219

14.1.3字符串测试 220

14.1.4整数比较 222

14.1.5逻辑测试符和逻辑运算符 223

14.2判断 224

14.2.1 if判断结构 224

14.2.2 if/else判断结构 225

14.2.3 if/elif/else判断结构 226

14.2.4 case判断结构 227

第15章 循环 229

15.1 for循环 229

15.1.1带列表的for循环 229

15.1.2不带列表的for循环 231

15.1.3类C的for循环 232

15.1.4 for的无限循环 233

15.2 while循环 234

15.2.1 while循环的语法 234

15.2.2使用while按行读取文件 235

15.2.3 while的无限循环 236

15.3 until循环 237

15.3.1 until循环的语法 237

15.3.2 until的无限循环 238

15.4 select循环 238

15.5嵌套循环 239

15.6循环控制 241

15.6.1 break语句 241

15.6.2 continue语句 241

第16章 函数 243

16.1函数的基本知识 243

16.1.1函数的定义和调用 243

16.1.2函数的返回值 244

16.2带参数的函数 246

16.2.1位置参数 246

16.2.2指定位置参数值 247

16.2.3移动位置参数 248

16.3函数库 249

16.3.1自定义函数库 249

16.3.2函数库/etc/init…d/functions简介 249

16.4递归函数 251

第17章 重定向 255

17.1重定向简介 255

17.1.1重定向的基本概念 255

17.1.2文件标识符和标准输入输出 255

17.2 I/O重定向 255

17.2.1 I/O重定向符号和用法 255

17.2.2使用exec 260

17.2.3 Here Document 262

第18章 脚本范例 263

18.1批量添加用户脚本 263

18.2检测服务器存活 266

18.3使用expect实现自动化输入 268

18.4自动登录ftp备份 270

18.5文件安全检测脚本 272

18.6 ssh自动登录备份 273

18.7使用rsync备份 275

18.8使用netcat备份 277

18.9使用iptables建立防火墙 279

18.10自定义开机启动项的init脚本 282

18.11使用脚本操作MySQL数据库 286

18.12基于LVM快照的MySQL数据库备份 288

18.13页面自动化安装LAMP环境 291