unix shell编程摘记系列(一)
一、基本命令回顾
date //显示日期和时间
who //查看登录系统的所有用户
echo //显示输入的内容
文件操作类
ls //列出文件清单
cat //显示文件内容
wc //统计文件中的单词数
cp //复制文件
mv //文件重命名
rm //删除文件
目录操作类
pwd //显示当前工作目录
cd //改变当前工作目录
mkdir //创建目录
ln //链接文件
ln -s 源文件 目标文件 //将源文件链接到目标文件
rmdir //删除目录
字符匹配
* //匹配0个或以上的字符
? //匹配任意一个字符
[abc] //匹配单个a或b或c
[0-9] //匹配0到9中的一个字符,指定范围的第一个字符的序号必须小于后一个字符的
示例:
[a-np-z]* //匹配除了o之外的从a-z的任意一个字母开头的文件名
! //非
示例:
[!a-z] //匹配除了a到z的小写字母之外的任意字符
*[!o] //匹配任意不以小写字母o结尾的文件名
ls [a-z]*[0-9] //列出以小写字母开头并以数字结尾的文件名清单
标准输入、输出
以who为例,who命令把登录到系统的用户清单写入到标准输出设备。
输入、输出重定向
> //输出重定向,覆盖已有内容
>> //追加输出重定向,不覆盖已有内容
cat(catenate) //后面跟多个文件时,可将多个文件连接起来
如:
cat a b >> c //将a和b文件中的内容追加到c文件中
> file //创建一个名为file的空文件,长度为0字符
wc -l a //计算a文件中的行数
管道
| //管道符
who | wc -l //将who命令的输出反馈给wc -l作为输入
过滤器
指从标准输入接受输入,对输入进行处理后,把结果写入标准输出的任何程序,如sort,wc都算,但ls不算;
标准错误
2> //标准错误重定向
; //分隔命令,如date;pwd
& //用于命令后面,表示后台执行
ps //显示系统正在运行的进程信息
二、shell是什么
init->getty->login->sh
如果要执行一个特定的程序,shell会在磁盘上搜索并找到指定程序,找到后,shell请求内核对程序进行初始化,之后shell进入“睡眠”,直到程序执行完毕。
程序名 参数表
shell作用:
执行程序;
解释编程语言;
环境控制;
管道线连接;
I/O重定向;
变量和文件名置换;
shell通过特定的字符去判断程序名的起止位置和参数表的起止位置,有空格字符、制表符、行结束符(统称为空白字符);
shell自动忽略空白字符;
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。