第1章Linux概述 1
1.1概述 1
1.2 Linux家族一览 2
1.2.1 Ubuntu 2
1.2.2 CentOS 3
1.2.3其他版本 3
1.3 Linux文件系统 5
1.3.1 Linux文件系统 5
1.3.2 Linux文件类型及属性 6
1.4 Linux目录结构 7
1.4.1 Linux系统结构 7
1.4.2目录结构 8
1.5知识点提示 9
1.6本章小结 9
第2章C语言概述 10
2.1数据类型 10
2.1.1基本数据类型 10
2.1.2指针类型 13
2.1.3构造类型 14
2.1.4其他类型 18
2.2 C语言的运算符及语句 19
2.2.1【实例1】——C语言的运算符 19
2.2.2【实例2】——C语言的语句 20
2.2.3【实例3】—— C语句全接触 26
2.2.4【实例4】——函数之C语句 28
2.3 C语言的函数 28
2.3.1函数结构 29
2.3.2函数类型 30
2.3.3【实例5】——函数结构全接触 31
2.3.4【实例6】——函数深入 32
2.4 C语言的程序 34
2.4.1程序构成 34
2.4.2从编辑到运行 34
2.4.3【实例7】——多文件程序 35
2.5知识点提示 37
2.6本章小结 38
第3章Shell之Bash 39
3.1 Shell 39
3.1.1何谓Shell 39
3.1.2 Shell种种 40
3.2 Bash 40
3.2.1 Bash的功能概述 41
3.2 2 Bash的命令 43
3.3基础命令新鲜体验 44
3.3.1【实例8】 ——date命令 44
3.3.2【实例9】 ——cal命令 45
3.3.3【实例10】—— be命令 46
3.4知识点提示 48
3.5本章小结 48
第4章 进阶Shell 49
4.1 Shell变量及编程 49
4.1.1变量介绍 49
4.1.2环境变量 50
4.1.3变量设定规则 51
4.1.4 Shell Script简介 53
4.2 Bash的环境配置文件 53
4.2.1 login Shell与non-login Shell 54
4.2.2系统设置 54
4.2.3用户设置 55
4.3 Shell脚本的应用 55
4.3.1【实例1 1】—— Linux优先无线上网 55
4.3.2【实例12】——安全删除和恢复文件 56
4.3.3【实例13】——定时执行指定程序 58
4.4知识点提示 60
4.5本章小结 60
第5章 数据流重导向与管线命令 61
5.1数据流重导向 61
5.1.1何谓数据流重导向 61
5.1.2【实例14】——标准输出与标准错误输出 61
5.1.3【实例15】——标准输入 63
5.1.4【实例16】—— /dev/null的用法 64
5.2管线命令 65
5.2.1管线命令来了 65
5.2.2【实例17】——选择/选取类命令cut、 grep 65
5.2.3【实例18】——排序类命令sort、 wc、 uniq 67
5.2.4【实例19】——双向重导向命令tee 69
5.2.5【实例20】——字符转换类命令tr、 col、 join、 paste、 expand 70
5.2.6【实例21】——分割类命令split 75
5.2.7【实例22】——参数代换命令xargs 77
5.3多命令执行 78
5.3.1【实例23】——多命令执行之: 78
5.3.2【实例24】——多命令执行之&& 79
5.3.3【实例25】——多命令执行之Ⅱ 79
5.4知识点提示 80
5.5本章小结 80
第6章Linux系统管理 81
6.1基本管理操作 81
6.1.1【实例26】——系统信息管理 81
6.1.2【实例27】——磁盘管理 84
6.1.3文件命令 89
6.1.4【实例28】——打包压缩命令 94
6.1.5软件管理命令 97
6.1.6进程管理命令 100
6.2系统配置文件 103
6.2.1全局配置 103
6.2.2用户配置 104
6.3知识点提示 105
6.4本章小结 106
第7章SecureCRT 107
7.1 SSH 107
7.2安装SecureCRT 107
7.3常用选项设置 109
7.3.1风格设置 110
7.3.2字体设置 111
7.3.3编码设置 112
7.3.4自动断开连接 112
7.3.5显示行数 113
7.3.6标签设置 113
7.4主菜单介绍 114
7.4.1文件(F) 114
7.4.2编辑(E) 115
7.4.3查看(V) 115
7.4.4选项(O) 116
7.4.5传输(T) 117
7.4.6脚本(S) 117
7.4.7工具(L) 118
7.4.8帮助(H) 118
7.5主工具栏介绍 119
7.6实际体验 119
7.6.1【实例29】——建立连接 119
7.6.2【实例30】——断开连接 122
7.6.3【实例31】——标签移动与切换 122
7.6.4【实例32】——上传和下载文件 123
7.7知识点提示 125
7.8本章小结 126
第8章 编辑器 127
8.1编辑器Vim 127
8.1.1 Vim概述 127
8.1.2【实例33】 ——Vim的启动、退出 128
8.1.3【实例34】—— Vim模式及模式切换 129
8.2 Vim指令模式 131
8.2.1【实例35】——光标移动操作 131
8.2.2【实例36】——查找操作 132
8.2.3【实例37】——复制粘贴 132
8.2.4【实例38】——删除操作 133
8.2.5【实例39】——修改操作 134
8.3 Vim编辑模式 135
8.3.1光标移动 135
8.3.2输入 135
8.3.3删除 136
8.4知识点提示 136
8.5本章小结 136
第9章 编译器 137
9.1编译器GCC 137
9.1.1 GCC概述 137
9.1.2【实例40】 ——GCC初识 138
9.1.3剖析GCC 139
9.2 GCC用法 139
9.2.1 GCC基本用法及其选项 139
9.2.2【实例41】——只编译子程序(-c) 140
9.2.3【实例42】——产生目标文件(-o) 141
9.2.4【实例43】——附加调试信息(-g) 141
9.2.5【实例44】——多文件编译 143
9.2.6【实例45】——连接库文件 144
9.2.7【实例46】——综合示例 144
9.3 GCC延续 146
9.3.1【实例47】——语法,懂的,却错了 146
9.3.2【实例48】——一个都不能少的头文件 147
9.3.3【实例49】——站在巨人的肩上,却忘了巨人的存在 147
9.3.4【实例50】——变量未定义而使用 148
9.4知识点提示 149
9.5本章小结 150
第10章 程序调试法宝——调试器 151
10.1 GDB 151
10.1.1 GDB初体验 151
10.1.2【实例51】 ——GDB接触 152
10.1.3 GDB的启动、退出 155
10.2 GDB常规接触 155
10.2.1程序调试法宝之运行程序 155
10.2.2程序调试法宝之单步运行 156
10.2.3程序调试法宝之设置断点 157
10.2.4程序调试法宝之设置观察点 157
10.2.5程序调试法宝之设置捕捉点 158
10.2.6程序调试法宝之维护停止点 158
10.2.7程序调试法宝之停止条件维护 159
10.3【实例52】 ——GDB实战 160
10.4知识点提示 167
105本章小结 167
第11章make 168
11.1 make 168
11.1.1程序的诞生 168
11.1.2 make的工作原理 168
11.1.3 make的语法及参数选项 170
11.2 makefile 172
11.2.1 剖析makefile 172
11.2.2说说makefile的文件名 173
11.2.3 makefile的包含 173
11.3 makefile的编写语法及规则 174
11.3.1【实例53】——makeflle的语法 174
11.3.2【实例54】——makeflle与命令 175
11.3.3【实例55】—— makeflle与变量 176
11.3.4 【实例56】——makeflle与条件语句 178
11.3.5【实例57】——makefile与函数 181
11.4隐含规则 183
11.4.1【实例58】——使用隐含规则 183
11.4.2隐含规则一览表 183
11.5知识点提示 184
11.6本章小结 185
第12章 戏说网络编程 186
12.1协议概述 186
12.1.1 TCP协议简介 187
12.1.2 IP协议简介 188
12.1.3 UDP协议 189
12.1.4端口号 190
12.2套接字编程 190
12.2.1套接字简介 190
12.2.2套接字类型及地址结构 190
12.2.3【实例59】——C/S模型 192
12.2.4【实例60】——常见服务器模型 195
12.3知识点提示 198
12.4本章小结 199
第13章TCP套接字编程 200
13.1基于TCP的C/S模式 200
13.2 TCP编程流程概述 201
13.2.1【实例61】——Socket建立 201
13.2.2【实例62】—— Socket配置 202
13.2.3【实例63】—— Socket连接 205
13.2.4【实例64】—— Socket数据收发 209
13.2.5【实例65】——域名转换IP 213
13.2.6【实例66】——其他相关函数 215
13.3 TCP编程进阶 217
13.3.1 I/O模式 217
13.3.2【实例67】 ——select函数 217
13.3.3【实例68】 ——poll函数 220
13.3.4【实例69】—— epoll函数 224
13.4【实例70】—— TCP套接字编程实战 228
13.5知识点提示 235
13.6本章小结 236
第14章UDP套接字编程 237
14.1基于UDP的C/S模式 237
14.2 UDP编程流程概述 238
14.2.1 UDP编程流程 238
14.2.2 TCP与UDP编程的区别 238
14.3 UDP编程进阶 239
14.3.1 sendto()函数 239
14.3.2 recvfrrom()函数 240
14.3.3数据包的丢失和处理 241
14.4【实例71】——UDP套接字编程实战 241
14.5知识点提示 246
14.6本章小结 246
第15章Qt图形编程 247
15.1 Qt与Qt Creator接触 247
15.1.1初识Qt与Qt Creator 247
15.1.2【实例72】 ——Hello World程序 249
15.1.3【实例73】——多窗口程序 253
15.1.4【实例74】——登录对话框 258
15.2 Qt Creator简单应用 262
15.2.1【实例75】——常见的菜单和图标 262
15.2.2【实例76】——文本编辑的实现 266
15.2.3【实例77】——文本查找的实现 273
15.2.4【实例78】——状态栏制作 275
15.3 Qt Creator深入 277
15.3.1【实例79】——简易FTP客户端 277
15.3.2【实例80】——完善FTP客户端 280
15.4知识点提示 287
15.5本章小结 287