新書推薦:
《
道德经新注 81幅作者亲绘哲理中国画,图文解读道德经
》
售價:HK$
143.4
《
清俗纪闻
》
售價:HK$
98.6
《
镜中的星期天
》
售價:HK$
76.2
《
世界前沿技术发展报告2024
》
售價:HK$
188.2
《
可转债——新手理财的极简工具
》
售價:HK$
65.0
《
新加坡教育:神话与现实
》
售價:HK$
96.3
《
“口袋中的世界史”第一辑·冷战中的危机事件
》
售價:HK$
291.2
《
绝美的奥伦堡蕾丝披肩编织
》
售價:HK$
177.0
編輯推薦:
● 单独一章介绍MariaDB,将带你初步领略广泛应用的关系型数据库管理系统RDBMS
● 精辟讲解Python,为系统管理员和高级用户提供指导
● 深入讲解bash和tcsh,全面讨论环境、继承和进程本地性,介绍基础和高级shell编程知识
● 解读102个核心实用程序,如aspell、xargs、printf和sshfscurlftpfs;还讨论macOS特有的实用程序,如ditto和SetFile等
● 关于使用rsync自动完成远程备份的专业指导
● 数十个系统安全提示,包括使用ssh和scp实现安全通信的详细步骤
● 关于定制shell的提示和技巧,包括步长值、序列表达式、eval内置命令和隐式命令行延续等
● 使用vim和emacs的高效编辑技术
● 300多页命令参考部分涵盖102个实用程序,如find、grep、sort和tar等
● 使用apt-get和dnf升级系统
● 还包括BitTorrent、gawk、sed、find、sort、bzip2和正则表达式等内容
內容簡介:
Linux是当今主要的Internet服务器平台。系统管理员和Web开发者需要熟谙Linux,深入掌握shell和命令行知识;由著名Linux专家Mark G. Sobell撰写的卓越经典书籍《Linux命令行与shell编程实战第4版》涵盖Linux的方方面面,将帮助你达成上述目标,成为Linux专家。《Linux命令行与shell编程实战第4版》将全面深入地介绍系统管理员、开发者以及高级用户*需要的工具,并涵盖日常工作中*常用的参考资源。合著者Matthew Helmke为《Linux命令行与shell编程实战第4版》增加了很多更新内容。 《Linux命令行与shell编程实战第4版》适用于所有Linux版本,列举了数百个紧贴实用的优质示例,从基础知识讲起,极为清晰地介绍了文件系统、shell、编辑器、实用程序、编程工具和正则表达式等*有用的Linux知识。 《Linux命令行与shell编程实战第4版》还向Mac用户介绍macOS命令行的相关内容,包括仅macOS可用而其他LinuxUNIX未含的工具和实用程序。
目錄 :
目 录
第1章 欢迎进入Linux和macOS世界 1
1.1 UNIX和GNU-Linux的发展史 2
1.1.1 Linux的起源:UNIX 2
1.1.2 回顾1983年 2
1.1.3 下一场景,1991年 3
1.1.4 自由代码 3
1.1.5 享受乐趣 4
1.2 Linux的优点 4
1.2.1 Linux受到硬件公司和开发人员欢迎的
原因 5
1.2.2 Linux的可移植性 6
1.2.3 C编程语言 6
1.3 Linux概述 6
1.3.1 Linux具有内核编程接口 7
1.3.2 Linux支持多用户 7
1.3.3 Linux支持多任务 7
1.3.4 Linux支持安全的分层文件系统 7
1.3.5 shell:命令解释器和编程语言 8
1.3.6 大量有用的实用程序 9
1.3.7 进程间的通信 9
1.3.8 系统管理 9
1.4 Linux的其他特性 9
1.4.1 GUI:图形用户界面 10
1.4.2 互联的网络实用程序 10
1.4.3 软件开发 10
1.5 本章小结 11
练习 11
第Ⅰ部分 Linux和macOS操作系统
第2章 入门 15
2.1 《Linux命令行与shell编程实战第4版》约定 16
2.2 从终端或终端模拟器登录 17
2.3 在命令行中工作 18
2.3.1 识别当前运行的是哪种shell 18
2.3.2 校正错误 18
2.3.3 重复编辑命令行 20
2.4 susudo:慎用root权限 20
2.5 如何查找相关文档 21
2.5.1 man:显示系统手册页 21
2.5.2 apropos:搜索关键字 22
2.5.3 info:显示实用程序的相关信息 23
2.5.4 --help选项 25
2.5.5 bash help命令 25
2.5.6 获取帮助 25
2.6 有关登录和密码的更多方面 27
2.6.1 如何处理登录失败 27
2.6.2 远程登录:终端模拟器、ssh和拨号
连接 28
2.6.3 使用虚拟控制台 28
2.6.4 退出 28
2.6.5 更改密码 28
2.7 本章小结 30
练习 30
高级练习 30
第3章 实用程序 33
3.1 特殊字符 34
3.2 基本实用程序 34
3.2.1 ls:显示文件名 35
3.2.2 cat:显示文本文件的内容 35
3.2.3 rm:删除文件 35
3.2.4 少即多:分屏显示文本文件 35
3.2.5 hostname:显示系统名 36
3.3 文件操作 36
3.3.1 cp:复制文件 36
3.3.2 mv:更改文件名 37
3.3.3 lpr:打印文件 37
3.3.4 grep:查找字符串 38
3.3.5 head:显示文件头部 38
3.3.6 tail:显示文件尾部 39
3.3.7 sort:按顺序显示文件的内容 39
3.3.8 uniq:忽略文件中重复的行 39
3.3.9 diff:比较两个文件 40
3.3.10 file:识别文件的内容 40
3.4 |管道:实现进程间的通信 41
3.5 4个有用的实用程序 41
3.5.1 echo:显示文本 41
3.5.2 date:显示日期和时间 42
3.5.3 script:记录shell会话信息 42
3.5.4 unix2dos:将Linux文件转换为Windows
和MacOS格式 42
3.6 压缩和归档文件 43
3.6.1 bzip2:压缩文件 43
3.6.2 bzcat和bunzip2:解压缩文件 44
3.6.3 gzip:压缩文件 44
3.6.4 tar:打包和解包文件 44
3.7 定位实用程序 46
3.7.1 which和whereis:定位实用程序 46
3.7.2 locate:搜索文件 47
3.8 显示用户和系统信息 47
3.8.1 who:列出系统上的用户 48
3.8.2 finger:列出系统上的用户 48
3.8.3 uptime:显示系统负载和持续运行时间
信息 49
3.8.4 w:列出系统上的用户 49
3.8.5 free:显示内存使用信息 50
3.9 与其他用户通信 50
3.9.1 write:发送消息 50
3.9.2 mesg:拒绝或接收消息 51
3.10 电子邮件 51
3.11 本章小结 52
练习 53
高级练习 54
第4章 Linux文件系统 55
4.1 分层文件系统 56
4.2 目录文件和普通文件 56
4.2.1 文件名 57
4.2.2 工作目录 58
4.2.3 主目录 58
4.3 路径名 59
4.3.1 绝对路径名 59
4.3.2 相对路径名 60
4.4 目录操作 61
4.4.1 mkdir:创建目录 61
4.4.2 cd:更改工作目录 62
4.4.3 rmdir:删除目录 63
4.4.4 使用路径名 63
4.4.5 mvcp:移动复制文件 63
4.4.6 mv:移动目录 64
4.4.7 重要的标准目录和文件 64
4.5 访问权限 66
4.5.1 ls -l:显示访问权限 66
4.5.2 chmod:改变访问权限 67
4.5.3 setuid和setgid权限 68
4.5.4 目录访问权限 69
4.6 ACL:访问控制列表 70
4.6.1 启用ACL 70
4.6.2 处理访问规则 71
4.6.3 设置目录的默认规则 73
4.7 链接 74
4.7.1 硬链接 74
4.7.2 符号链接 76
4.7.3 rm:删除链接 78
4.7.4 解引用符号链接 78
4.8 本章小结 81
练习 82
高级练习 83
第5章 shell 85
5.1 命令行 86
5.1.1 简单命令 86
5.1.2 语法 86
5.1.3 处理命令行 88
5.1.4 执行命令行 90
5.1.5 编辑命令行 90
5.2 标准输入和输出 90
5.2.1 作为文件的屏幕 91
5.2.2 作为标准输入的键盘和作为标准输出的
屏幕 91
5.2.3 重定向 92
5.2.4 管道 96
5.2.5 链 98
5.3 在后台运行命令 99
5.4 生成文件名扩展路径名 100
5.4.1 特殊字符? 100
5.4.2 特殊字符* 101
5.4.3 特殊字符[ ] 102
5.5 内置命令 104
5.6 本章小结 104
练习 105
高级练习 106
第Ⅱ部分 编辑器
第6章 vim编辑器 109
6.1 历史 110
6.2 入门:用vim创建和编辑文件 110
6.2.1 启动vim 110
6.2.2 命令模式和输入模式 112
6.2.3 输入文本 112
6.2.4 获取帮助 113
6.2.5 结束编辑会话 115
6.2.6 compatible参数 115
6.3 介绍vim的特性 115
6.3.1 联机帮助 115
6.3.2 术语 116
6.3.3 操作模式 116
6.3.4 显示 116
6.3.5 在输入模式下校正文本 117
6.3.6 工作缓冲区 117
6.3.7 行长度与文件大小 117
6.3.8 窗口 117
6.3.9 锁定文件 117
6.3.10 非正常结束编辑会话 118
6.3.11 崩溃后的文本恢复 118
6.4 在命令模式下移动光标 119
6.4.1 按字符移动光标 120
6.4.2 将光标移到某个特定字符 120
6.4.3 按字移动光标 120
6.4.4 按行移动光标 121
6.4.5 按句子和段落移动光标 121
6.4.6 在屏幕内移动光标 121
6.4.7 查看工作缓冲区的不同部分 122
6.5 输入模式 122
6.5.1 插入文本 122
6.5.2 追加文本 122
6.5.3 为输入文本打开行 122
6.5.4 替换文本 123
6.5.5 在输入模式下转义特殊字符 123
6.6 在命令模式下删除和修改文本 123
6.6.1 撤消修改 123
6.6.2 删除字符 123
6.6.3 删除文本 123
6.6.4 修改文本 124
6.6.5 替换文本 125
6.6.6 修改大小写 125
6.7 查找和替换 125
6.7.1 查找字符 126
6.7.2 查找字符串 126
6.7.3 字符串的替换 127
6.8 其他命令 129
6.8.1 连接命令 129
6.8.2 状态命令 129
6.8.3 .句点 129
6.9 复制、移动和删除文本 130
6.9.1 通用缓冲区 130
6.9.2 命名缓冲区 130
6.9.3 编号缓冲区 131
6.10 文件的读写 131
6.10.1 读文件 131
6.10.2 写文件 131
6.10.3 识别当前文件 132
6.11 参数设置 132
6.11.1 在vim中设置参数 132
6.11.2 在启动文件中设置参数 132
6.11.3 .vimrc启动文件 133
6.11.4 参数 133
6.12 高级编辑技巧 135
6.12.1 使用标记 135
6.12.2 编辑其他文件 136
6.12.3 宏与快捷键 136
6.12.4 在vim中执行shell命令 136
6.13 度量单位 137
6.13.1 字符 138
6.13.2 字 138
6.13.3 空白分隔字 138
6.13.4 行 138
6.13.5 句子 139
6.13.6 段落 139
6.13.7 屏幕窗口 139
6.13.8 重复因子 139
6.14 本章小结 140
练习 143
高级练习 144
第7章 emacs编辑器 145
7.1 历史 145
7.1.1 演化 146
7.1.2 emacs与vim 146
7.2 入门:开始使用emacs 147
7.2.1 启动emacs 147
7.2.2 退出emacs 148
7.2.3 插入文本 148
7.2.4 删除字符 149
7.2.5 移动光标 149
7.2.6 在光标处编辑 151
7.2.7 保存和检索缓冲区中的内容 151
7.3 基本编辑命令 152
7.3.1 按键的表示与使用 152
7.3.2 键序列和命令 152
7.3.3 META x:运行不带绑定键的命令 153
7.3.4 数值参数 153
7.3.5 编辑点与光标 153
7.3.6 在缓冲区中滚动 153
7.3.7 删除文本 154
7.3.8 搜索文本 154
7.3.9 通过键盘使用菜单栏 155
7.4 联机帮助 156
7.5 高级编辑 157
7.5.1 撤消修改 157
7.5.2 编辑点、标记和区域 158
7.5.3 剪切与粘贴:移出已剪切文本 159
7.5.4 插入特殊字符 160
7.5.5 全局缓冲区命令 161
7.5.6 访问和保存文件 162
7.5.7 缓冲区 164
7.5.8 窗口 165
7.5.9 前台shell命令 166
7.5.10 后台shell命令 166
7.6 主模式:区分语言的编辑 167
7.6.1 选择主模式 167
7.6.2 自然语言模式 167
7.6.3 C模式 169
7.6.4 定制缩进 171
7.6.5 注释 171
7.6.6 专用模式 172
7.7 定制emacs 172
7.7.1 .emacs启动文件 173
7.7.2 重映射键 174
7.7.3 .emacs文件示例 175
7.8 更多信息 175
7.9 本章小结 176
练习 181
高级练习 182
第Ⅲ部分 shell
第8章 bash 187
8.1 背景知识 188
8.2 启动文件 188
8.2.1 登录shell 189
8.2.2 交互式非登录shell 189
8.2.3 非交互式shell 189
8.2.4 建立启动文件 189
8.2.5 .句点或source:在当前shell中
运行启动文件 191
8.3 符号命令 191
8.4 重定向标准错误 191
8.5 编写和执行简单的shell脚本 193
8.5.1 chmod:使文件可执行 193
8.5.2 #!指定shell 194
8.5.3 #开始一行注释 195
8.5.4 执行shell脚本 196
8.6 控制操作符:命令分隔和命令
分组 196
8.6.1 使用分号和换行符分隔命令 196
8.6.2 |和&分隔命令及其他功能 197
8.6.3 布尔控制操作符&&和|| 198
8.6.4 命令分组 198
8.6.5 继续命令 199
8.7 作业控制 199
8.7.1 jobs:列出作业 200
8.7.2 fg:将作业移到前台运行 200
8.7.3 挂起作业 201
8.7.4 bg:将作业移到后台运行 201
8.8 操作目录栈 201
8.8.1 dirs:显示栈 202
8.8.2 pushd:将目录压入栈中 202
8.8.3 popd:将目录从栈中弹出 202
8.9 参数和变量 203
8.9.1 用户创建的变量 204
8.9.2 变量属性 206
8.9.3 关键字变量 207
8.10 特殊字符 212
8.11 locale 213
8.12 时间 215
8.13 进程 217
8.13.1 进程结构 218
8.13.2 进程标识 218
8.13.3 执行命令 219
8.14 历史机制 219
8.14.1 控制历史机制的变量 220
8.14.2 重新执行和编辑命令 221
8.14.3 Readline库 226
8.15 别名 230
8.15.1 别名中的单引号和双引号 231
8.15.2 别名示例 231
8.16 函数 233
8.17 控制bash的功能和选项 235
8.17.1 bash命令行选项 235
8.17.2 shell的功能 235
8.18 处理命令行 237
8.18.1 历史扩展 237
8.18.2 别名替换 238
8.18.3 解析和扫描命令行 238
8.18.4 命令行扩展 238
8.19 本章小结 244
练习 245
高级练习 246
第9章 tcsh 249
9.1 shell脚本 250
9.2 进入和退出tcsh 250
9.3 bash与tcsh的共性 252
9.3.1 命令行扩展替换 252
9.3.2 作业控制 255
9.3.3 文件名替换 255
9.3.4 操作目录栈 255
9.3.5 命令替换 256
9.4 重定向标准错误 256
9.5 操作命令行 256
9.5.1 字补全 257
9.5.2 编辑命令行 258
9.5.3 校正拼写 259
9.6 变量 260
9.6.1 变量替换 260
9.6.2 字符串变量 260
9.6.3 字符串变量数组 261
9.6.4 数值变量 261
9.6.5 花括号 263
9.6.6 特殊的变量形式 263
9.6.7 tcsh变量 264
9.7 控制结构 268
9.7.1 if 268
9.7.2 goto 270
9.7.3 中断处理 270
9.7.4 if...then...else 270
9.7.5 foreach 271
9.7.6 while 272
9.7.7 break和continue 273
9.7.8 switch 273
9.8 内置命令 274
9.9 本章小结 277
练习 277
高级练习 278
第Ⅳ部分 编程工具
第10章 bash程序设计 281
10.1 控制结构 282
10.1.1 ifthen 282
10.1.2 if...then...else 285
10.1.3 if...then...elif 286
10.1.4 for...in 290
10.1.5 for 292
10.1.6 while 293
10.1.7 until 296
10.1.8 break与continue 297
10.1.9 case 298
10.1.10 select 302
10.1.11 Here文档 304
10.2 文件描述符 305
10.2.1 打开文件描述符 305
10.2.2 复制文件描述符 306
10.2.3 文件描述符示例 306
10.2.4 确定文件描述符是否与终端关联 308
10.3 参数 309
10.3.1 位置参数 309
10.3.2 特殊参数 313
10.4 变量 315
10.4.1 shell变量 315
10.4.2 环境、环境变量和继承 316
10.4.3 扩展空变量和未赋值的变量 319
10.4.4 数组变量 320
10.4.5 函数中的变量 321
10.5 内置命令 322
10.5.1 type:显示命令的相关信息 322
10.5.2 read:接收用户输入 322
10.5.3 exec:执行命令或重定向文件描
述符 325
10.5.4 trap:捕获信号 326
10.5.5 kill:终止进程 328
10.5.6 eval:扫描、赋值并执行命令行 329
10.5.7 getopts:解析选项 329
10.5.8 部分内置命令列表 331
10.6 表达式 332
10.6.1 算术表达式 332
10.6.2 逻辑表达式条件表达式 333
10.6.3 字符串模式匹配 333
10.6.4 运算符 334
10.7 隐式命令行延续 337
10.8 shell程序 337
10.8.1 递归的shell脚本 338
10.8.2 shell的quiz脚本 340
10.9 本章小结 345
练习 345
高级练习 346
第11章 Perl脚本语言 349
11.1 Perl简介 350
11.1.1 更多信息 350
11.1.2 帮助 350
11.1.3 perldoc 350
11.1.4 术语 352
11.1.5 运行Perl程序 352
11.1.6 语法 353
11.2 变量 355
11.2.1 标量变量 356
11.2.2 数组变量 357
11.2.3 哈希变量 358
11.3 控制结构 359
11.3.1 ifunless 359
11.3.2 ifelse 361
11.3.3 ifelsifelse 361
11.3.4 foreachfor 362
11.3.5 last和next 363
11.3.6 whileuntil 364
11.4 处理文件 365
11.5 排序 367
11.6 子例程 368
11.7 正则表达式 370
11.8 CPAN模块 373
11.9 示例 375
11.10 本章小结 377
练习 377
高级练习 378
第12章 Python编程语言 379
12.1 简介 379
12.1.1 调用Python 380
12.1.2 更多信息 381
12.1.3 写标准输出与读标准输入 381
12.1.4 函数和方法 382
12.2 标量变量、列表和字典 382
12.2.1 标量变量 382
12.2.2 列表 383
12.2.3 字典 386
12.3 控制结构 387
12.3.1 if 387
12.3.2 ifelse 387
12.3.3 ifelifelse 388
12.3.4 while 388
12.3.5 for 389
12.4 读写文件 390
12.4.1 文件输入和输出 390
12.4.2 异常处理 391
12.4.3 pickle模块 392
12.5 正则表达式 392
12.6 定义函数 394
12.7 使用库 394
12.7.1 标准库 394
12.7.2 非标准库 394
12.7.3 SciPy和NumPy库 395
12.7.4 命名空间 395
12.7.5 导入模块 395
12.7.6 导入函数示例 396
12.8 Lambda函数 397
12.9 列表推导 398
12.10 本章小结 398
练习 399
高级练习 399
第13章 MariaDB数据库管理系统 401
13.1 注意 402
13.1.1 语法和惯例 403
13.1.2 更多信息 404
13.2 安装MariaDB服务器和客户端 404
13.2.1 FedoraRHELRed Hat Enterprise
Linux 404
13.2.2 DebianUbuntuMint 404
13.2.3 OpenSUSE 405
13.2.4 macOS 405
13.3 客户端选项 405
13.4 配置MariaDB 405
13.4.1 为MariaDB root用户指定密码 406
13.4.2 删除匿名用户 406
13.4.3 运行安全安装脚本 406
13.4.4 ~.my.cnf:配置MariaDB客户端 406
13.4.5 ~.mysql_history:保存MariaDB
历史 406
13.5 创建数据库 407
13.6 添加用户 407
13.7 一些示例 408
13.7.1 登录 408
13.7.2 创建表 408
13.7.3 添加数据 409
13.7.4 获取数据 410
13.7.5 备份数据库 412
13.7.6 修改数据 412
13.7.7 创建第二个表 413
13.7.8 连接查询 413
13.8 本章小结 416
练习 417
第14章 AWK模式处理语言 419
14.1 语法 420
14.2 参数 420
14.3 选项 420
14.4 注意 421
14.5 语言基础 421
14.5.1 模式 421
14.5.2 动作 421
14.5.3 注释 422
14.5.4 变量 422
14.5.5 函数 422
14.5.6 算术运算符 423
14.5.7 关联数组 423
14.5.8 printf 423
14.5.9 控制结构 424
14.6 示例 426
14.7 gawk高级编程 438
14.7.1 getline:控制输入 438
14.7.2 协进程:双向IO 439
14.7.3 从网络获取输入 440
14.8 本章小结 441
练习 441
高级练习 441
第15章 sed编辑器 443
15.1 语法 443
15.2 参数 443
15.3 选项 444
15.4 编辑器基础 444
15.4.1 地址 444
15.4.2 指令 445
15.4.3 控制结构 445
15.4.4 暂存空间 446
15.5 示例 446
15.6 本章小结 453
练习 453
第Ⅴ部分 安全的网络实用程序
第16章 rsync安全复制实用程序 457
16.1 语法 458
16.2 参数 458
16.3 选项 458
16.3.1 注意 459
16.3.2 更多信息 459
16.4 示例 460
16.4.1 使用source-file尾部的斜杠 460
16.4.2 删除文件 460
16.4.3 在远程系统上复制文件 461
16.4.4 镜像目录 462
16.4.5 生成备份 462
16.4.6 恢复文件 464
16.5 本章小结 464
练习 464
第17章 OpenSSH安全通信实用程序 465
17.1 OpenSSH简介 466
17.1.1 文件 466
17.1.2 更多信息 467
17.2 运行OpenSSH客户端ssh、scp
和sftp 467
17.2.1 指南:使用ssh和scp连接到
OpenSSH服务器 467
17.2.2 配置OpenSSH客户端 467
17.2.3 ssh:登录或者在远程系统上执行
命令 469
17.2.4 scp:与远程系统互相复制文件 471
17.2.5 sftp:安全的FTP客户端 472
17.2.6 ~.sshconfig和etcsshssh_config
配置文件 473
17.3 设置OpenSSH服务器sshd 474
17.3.1 必要的前提条件 474
17.3.2 注意 474
17.3.3 指南II:启动OpenSSH服务器 474
17.3.4 认证密钥:自动登录 474
17.3.5 randomart图 475
17.3.6 ssh-agent:保存私钥 476
17.3.7 命令行选项 477
17.3.8 etcsshsshd_config配置文件 477
17.4 疑难解答 478
17.5 隧道端口转发 478
17.5.1 转发X11 478
17.5.2 端口转发 479
17.6 本章小结 479
练习 480
高级练习 480
第Ⅵ部分 命令参考
第18章 命令参考 483
18.1 标准倍数后缀 487
18.2 常见选项 487
18.3 sample实用程序 487
18.4 samplemacOS 488
18.5 aspell 488
18.6 at 491
18.7 busybox 494
18.8 bzip2 496
18.9 cal 497
18.10 cat 498
18.11 cd 499
18.12 chgrp 501
18.13 chmod 502
18.14 chown 505
18.15 cmp 506
18.16 comm 508
18.17 configure 509
18.18 cp 510
18.19 cpio 512
18.20 crontab 516
18.21 cut 518
18.22 date 519
18.23 dd 521
18.24 df 523
18.25 diff 524
18.26 diskutil仅用于macOS 528
18.27 ditto仅用于macOS 530
18.28 dmesg 531
18.29 dsclmacOS 532
18.30 du 534
18.31 echo 536
18.32 expandunexpand 537
18.33 expr 538
18.34 file 540
18.35 find 542
18.36 finger 545
18.37 fmt 547
18.38 fsck 548
18.39 ftp 551
18.40 gawk 555
18.41 gcc 555
18.42 GetFileInfo仅用于macOS 558
18.43 grep 559
18.44 gzip 562
18.45 head 564
18.46 join 565
18.47 kill 567
18.48 killall 568
18.49 launchctl仅用于macOS 569
18.50 less 571
18.51 ln 574
18.52 lpr 575
18.53 ls 577
18.54 make 581
18.55 man 585
18.56 mc 587
18.57 mkdir 592
18.58 mkfs 593
18.59 mv 594
18.60 nice 596
18.61 nl 597
18.62 nohup 598
18.63 od 598
18.64 open仅用于macOS 601
18.65 otoolmacOS 603
18.66 paste 604
18.67 pax 606
18.68 plutil仅用于macOS 609
18.69 pr 610
18.70 printf 611
18.71 ps 614
18.72 renice 616
18.73 rm 617
18.74 rmdir 618
18.75 rsync 619
18.76 scp 619
18.77 screen 620
18.78 sed 623
18.79 SetFile仅用于macOS 623
18.80 sleep 624
18.81 sort 625
18.82 split 632
18.83 ssh 633
18.84 sshfscurlftpfs 633
18.85 stat 635
18.86 strings 636
18.87 stty 637
18.88 sysctl 639
18.89 tail 640
18.90 tar 642
18.91 tee 645
18.92 telnet 646
18.93 test 648
18.94 top 650
18.95 touch 652
18.96 tr 653
18.97 tty 655
18.98 tune2fs 656
18.99 umask 658
18.100 uniq 659
18.101 w 660
18.102 wc 662
18.103 which 662
18.104 who 664
18.105 xargs 665
第Ⅶ部分 附录
附录A 正则表达式 669
附录B 获取帮助 677
附录C 更新系统 681
附录D macOS注意事项 691
附录E 术语表 699
內容試閱 :
前 言
Linux 《Linux命令行与shell编程实战第4版》阐述如何通过命令行方式使用Linux操作系统。《Linux命令行与shell编程实战第4版》前几章介绍Linux基础知识。后面部分则介绍更后面的主题,详细阐述相关技术。《Linux命令行与shell编程实战第4版》并不针对特定的Linux版本或者某个发行版,而是适用于所有近期发布的Linux版本。
macOS 《Linux命令行与shell编程实战第4版》还解释如何使用macOS的UNIXLinux基本功能。这部分内容直奔主题,跳过了大多数人经常与Macintosh联系在一起的传统图形用户界面GUI,讨论如何使用与macOS直接相连的强大命令行界面CLI。在《Linux命令行与shell编程实战第4版》中提到Linux之处,也隐含了macOS,并指出了这两种操作系统之间的区别。
命令行界面CLI 在计算机诞生之初,只有命令行文本界面Command Line Interface,CLI,可通过命令行向Linux输入命令。那时还没有鼠标和图标,也就不能通过拖放方式进行操作。某些程序如emacs使用ASCII字符集中非常有限的图形字符实现了基本的窗口。反白显示技术可将计算机屏幕分成几个区域。