前言 1
第一章 BASH shell编程 3
shell脚本:命令和注释 3
控制结构 5
任务:后台、撤消和中断 7
操作符 7
定义变量,为变量赋值:=、$ 8
Here:(<<) 8
双引号、单引号和反斜线:“”、‘’、\ 9
反引号:`` 10
位置参数:$ 11
算术运算符 13
重定向标准输出:>. 13
向标准输出追加:>> 14
标准输入:< 15
管道符:| 15
重定向和管道输出标准错误:> 、2>、| 17
后台: 19
和|| 19
函数:(){} 19
CTRL-Z:中断 20
source?? 20
冒号(:) 20
BASH命令 20
alias 21
at 21
bg 22
bind 22
break 23
builtin 23
case 23
cd 24
dirs 25
continue 25
declare 25
echo 26
elif 27
enable 28
cval 28
exec 28
exit 28
cxport 29
fe 29
for 30
fg 30
for-in 31
getopts 32
hash 33
help 33
history 33
if-then 34
jobs 35
kill 36
let 37
notify 38
logout 38
local 38
popd 39
ps 39
pushd 40
pwd 41
read 41
readonly 42
return 42
select 42
set 43
test 46
shift 46
suspend 46
trap 48
type 48
umask 49
unalias 49
unset 49
wait 49
while 50
BASH shell配置 50
BASH shell注册初始化文件:.bash-profile 51
BASH shell初始化文件:.bashrc 53
注销BASH shell初始化文件:.bash-logout 54
BASH shell配置变量 55
第二章 TCSH shell编程 59
TCSH shell变量、脚本和参数 59
脚本输入和脚本输出:$< 59
操作符 60
重定向和管道符:<、<<、>、| 62
控制结构 62
测试表达式:() 63
数字变量:@ 65
alias 65
TCSH命令 65
argv 66
bg 68
break 68
breaksw 68
builtins 68
ed 68
eval 69
echo 69
dirs 69
continue 69
exec 70
exit 70
fg 70
foreach 70
history 72
hup 73
if-then 73
if-then-else 74
logout 75
nice 75
jobs 75
kill 75
nohup 76
notify 76
onintr 76
popd 76
printenv 77
pushd 77
repeat 77
aet 77
shift 79
source 79
setenv 79
stop 80
switch 80
time 81
umask 81
unalias 82
unset 82
unsetenv 82
wait 82
where 82
which 82
while 83
TCSH shell特征 84
TCSH配置 84
TCSH shell变量 86
TCSH shell初始化文件 89
第三章 Z-shell程序设计 91
shell脚本:命令和注释 91
控制结构 91
任务:后台、删除和中断 93
操作符 93
变量定义和赋值:=、$ 93
位置参数:$ 94
反引号:`` 94
双引号、单引号和反斜线:“”、‘’、\ 94
Here:<< 94
算术运算符 95
条件表达式 96
重定向符和管道符:<、<<、>、| 98
后台: 98
Z-shell命令 98
冒号(:) 98
句号(。) 98
双括号:(()) 98
break 99
bg 99
alias 99
双中扩号[[]] 99
CTRI~Z:中断 99
builtin 100
case 100
cd 100
continue 101
declare 101
dirs 102
echo 102
elif 102
exec 103
enable 103
cval 103
exit 104
export 104
fc 104
fg 104
for 105
for-in 105
foreach 106
function 107
getopts 108
functions 108
hash 109
history 109
if-then 109
integer 110
jobs 110
kill 110
let 110
local 111
logout 111
print 112
popd 112
notify 112
ps 113
pushd 113
pwd 113
read 114
readonly 115
repeat 115
retum 115
select 115
shift 116
setopt 116
set 116
suspend 117
test 117
trap 118
type 118
typeset 119
umask 119
unalias 119
unfunction 119
wait 120
whence 120
until 120
unset 120
which 121
while 121
ZSH-shell配置 122
ZSH初始化文件 122
shell配置变量 122
shell选项 124
第四章 编译器和库:gcc、g ++和gdb 129
获取信息:info 129
C编译器:gcc 130
源文件、目标文件和可执行文件 132
ELF和a.out二进制格式文件 134
C++和Objective C:g++ 134
其他编译程序:Pascal、Ada、Lisp和Fortran 135
建立库和使用库:静态库、共享库和动态库 136
库名 136
调用库文件:-1 137
共享库 137
动态链接库 139
静态库:ar 141
开发库 142
gdb符号调试程序 143
显示变量和参数 144
指针 146
终止与单步调试 147
运行gdb的实例 148
xxgdb 151
程序设计工具 152
C实用程序:f2c和p2c 152
cproto 152
indent 152
xwpe 153
复制运行的程序:脚本命令 153
autoconf 154
封装软件:autoconf和rpm 154
rpm 157
第五章 开发工具 167
make实用程序 167
相关行 169
产生变量 173
产生特殊目标文件 176
后缀规则 177
库和目标 181
makefile实例 183
修订控制系统:RCS 184
创建RCS文件 185
检索和记录RCS文件 187
检索、删除指定的RCS版本 189
RCS文件的make后缀规则 190
应用程序在线手册:man命令* 193
man文档文件 193
man文档目录 196
第六章 Gnome程序设计 199
Gnome库 200
编译Gnome程序 201
Gnome程序的实例 202
libgnome库 205
Gnome用户界面库:libgnomeui 207
gnome应用程序、工具栏以及菜单窗口 208
对话框 220
输入项 224
图像和多文档接口 225
Gnome画布 225
GTK+ 226
信号和事件 232
小部件 236
打包小部件 241
拖放 243
Glib库 252
GDK 253
第七章KDE程序设计 257
KDE库 258
KDE应用程序和小部件 258
编译 266
消息和存储槽 271
元对象编译程序:MOC 272
状态栏和工具栏 275
菜单 275
QT程序设计 280
QT应用程序 280
QT消息和存储槽 282
窗口 283
层次关系对象 283
布局小部件 284
创建自己小部件 285
工具栏 287
菜单 288
对话框 289
单击和拖动 290
附录A Perl:快速参考 313
Web站点 313
新闻组 313
文件命令 314
文件权限 314
命令行选项 314
数组操作指令(@array) 315
标量数组 315
关联数组 315
算术运算符 316
关系运算符 316
运算符 316
常用数组 316
增量运算符 317
赋值运算符 317
字符串比较运算符 317
逻辑运算符 317
文件测试运算符 318
赋值运算符 318
控制结构 319
条件控制结构:if、else、elsif、case 319
函数 320
循环控制结构:while、until、for、foreach 320
字符串操作 321
字符串函数 321
模式匹配操作命令 322
操作符 322
选项 322
正则表达式 322
特殊字符 322
转义字符 323
子例程程序元素 323
附录B Tcl和Tk 325
Tcl和Tk的软件产品 325
赋值和变量 326
Tcl列表操作命令 326
通用Tcl命令 326
控制结构和过程 327
文件命令 327
输入/输出命令 328
字符串命令 328
系统命令 329
Tk命令 329
事件操作命令 329
几何管理命令 329
标准的Tk小部件 330
窗口操作命令 330
标准的Tk选项 331
按钮选项 332
附录C TeX和LaTeX 333
TeX和LaTeX数学符号 333
TeX 334
命令 334
特殊字符 337
LaTeX 338
文档类 338
环境 339
命令 340