[字元组合] 在中括号中的字元皆符合, 如: [a-z]代表所有的小写字母
[!字元组合] 不在中括号中的字元皆符合, 如: [!0-9]代表非数字的字元皆符合
七. 输入和输出与重新导向.
当 unix系统完成开机之後, 预设上, 便开有三个档案, 这三个档案是做为输入、输出以及显示错误之用的.
我们称之为:
标准输入: 通常是键盘, 档案代码为 0
标准输出: 通常是萤幕, 档案代码为 1
标准错误: 通常标准输出相同(也就是萤幕), 档案代码为 2
虽然系统已帮你设好了这三个档案, 但我们仍然可以视需要, 适时地改变输入,输出,及错误这三者至不同的地方. 这种改变标准输出入的动作, 我们称之为 "I/O 重新导向" (I/O Redirection).
例如:
ls -la > myfile 就是将查询的结果重新导向至 myfile 中(本来是应该出现在萤幕上的)
cat myfile 便可以看见 ls -la 的结果.
cat < myfile > youfile 就是将 myfile 的内容拷贝给 youfile.
> 代表将输出转向
< 代表将输入转向
另一个会将输出入转向的机制是 "管线" (Pipelines).
所谓的管线就是将一个程式的输出当成另一个程式的输入.
例如: cat /etc/passwd | grep ols3
上面这段指令的意思是说: 把 /etc/passwd 档的内容显示结果(即输出) 丢给 grep 这个指令当作输入值, 然後由 grep 从中找出包含关键字 ols3 的资料列.
八. 前台与后台工作.
unix 是多用户多任务的作业系统, 这意谓UNIX 可以让多人同时使用, 更可以同时执行许多程式.
一般而言, 你所执行的指令会一直握着控制权, 一直到程式结束为止, 我们称为这样的执行工作是在前台工作(foreground jobs), 如果, 执行指令时, 你仍然可以再做其它的事情, 那我们就称它是在后台工作.
通常比较耗时间的工作, 我们会把它丢到后台去执行, 而这期间, 我们仍然可以和 shell 继续沟通, 下达其它命令给 shell 去执行.
例如: 我们想从中研院的 FTP 伺服器下载某一个目录中所有的档案, 但又不想等它执行完毕(因为这样耗时间,也很无聊), 可以用以下的方式来达成:
ncftp -R ftp://linux.sinica.edu.tw/pub1/redhat/powertools&
其中 & 这个符号便是将命令列丢到后台去执行的指令.
如果您想离线之後, 仍然令系统继续传档, 可以在前面再加一个 nohup 的指令, 如下:
nohup ncftp -R ftp://linux.sinica.edu.tw/pub1/redhat/powertools&
nohup 是 no hangup 即不挂断之意.
八. 特殊字元及引号.
有许多字元, 对 shell 来说, 是具有特殊意义的. 详列於下:
符号 意义
~ 自家目录
` 命令取代
# 解
$ 变数取值
& 后台工作
* 万用字元
( 子shell开始
) 子shell结束
使特殊字元恢复本意
| 管线
[ 字元组合开始
] 字元组合结束
{ 命令区块开始
} 命令区块结束
; 命令分隔号
" 单引号(不具变数置换的功能)
" 双引号(具置换的功能)
< 输入转向
> 输出转向
/ 路径分隔号
? 万用字元
! 管线逻辑意义上的 NOT
推荐阅读
- 定制刻录SCO UNIX安装光盘的步骤
- SCO OPENSERVER 下custom发布软件的制作方法
- sco的管理工具
- sco拨号详解
- 2 sco unixware 7.1.1 全面学习资料
- vmware 下安装sco的步聚
- SCO UNIX安装参考
- 3 sco unixware 7.1.1 全面学习资料
- 7 sco unixware 7.1.1 全面学习资料
- sco下播放mp3