admin 管理员组文章数量: 1086019
2024年4月17日发(作者:haskell语言入门教程)
Shell 脚本基础学习笔记
版本历史
V1
详细内容
新建
时间
2010
修订者
hxghan@
shell脚本的解释用“#”号,本文档为了习惯方便,解释大都用“//”,也有用“#”的
SHELL 最基本的语法
shell内部变量
$#
$*
将存放命令行传入的所有参数
所有的命令行参数。
“$*”表示shell文件的所有参数及其空格连在一起作
为单个词处理;
同上,稍有区别。
“$@”与shell文件接收的参数等价,参数中的空格
被忽略,其结果是等同于原来参数的一个单词列表
Shell的选择项
上次执行命令返回值
Shell的进程标识符
用&启动的最后一个命令的进程标识符
参数分割词的字符表
信件文件,当其改变时给出信息you have mail
搜索命令的目录表
提示符串,缺省为$
后继命令行提示符,缺省为>
逻辑表达式
s1 = s2
s1 != s2
-n s1
-z s1
d1 lt d2
d1 le d2
d1 eq d2
d1 ge d2
d1 gt d2
-b fname
-c fname
若字符串 s1等s2一样
若字符串 s1 不等于 s2 则运算结果为真
若字符串s1不为零则为真
字符串s1空为真
数值比较运算符
若d1小于d2则运算结果为真,否则为假
若d1小于或等于d2则运算结果为真,否则为假
若d1等于d2则结果为真否则为假
若d1大于或等于d2则运算结果为真,否则为假
若d1大于 d2则运算结果为真,否则为假
文件判断运算符
若fname存在且为块设备则结果为真,否则为假
若fname存在且为字符文件,则结果为真否则为假
$@
$-
$?
$$
$!
$IFS
$PATH
$PS1
$PS2
-d fname
-f fname
-h fname
-r fname
-s fname
-w file
-x file
若fname存在且是一个目录则结果为真,否则为假
若fname存在且是一个普通文件则结果为真否则为
假
若fname存在且为一个隐含文件,则结果为真,否则为
假
若fname是可读的,则结果为真,否则为假
若fname的长度不为零,则结果为真 否则为假
文件可写返回真
文件可执行返回真
基本元字符集及其含义(2008-05-24)
abc 表示 abc 三個連續的字符, 但彼此獨立而非集合. (可簡單視為三個 char set)
(abc) 表示 abc 這三個連續字符的集合. (可簡單視為一個 char set)
a|b 表示單一字符, 或 a 或 b .
(abc|xyz) 表示或 abc 或 xyz 這兩個 char. set 之一. (註二)
[abc] 表示單一字符, 可為 a 或 b 或 c . (與 wildcard 之 [abc] 原理相同)
[^abc] 表示單一字符, 不為 a 或 b 或 c 即可. (與 wildcard 之 [!abc] 原理相同)
^ 只匹配行首
$ 只匹配行尾
* 只一个单字符后紧跟*,匹配0个或多个此单字符
[ ] 只匹配[ ]内字符。可以是一个单字符,也可以是字符序列。可以使用-表示[ ]内字符序列范围,如用[ 1 -
5 ]代替[ 1 2 3 4 5 ]
只用来屏蔽一个元字符的特殊含义。因为有时在s h e l l中一些元字符有特殊含义。可以使其失去应有
意义
. 只匹配任意单字符
p a t t e r n { n } 只用来匹配前面p a t t e r n出现次数。n为次数
p a t t e r n { n, }含义同上,但次数最少为n
p a t t e r n { n,m }含义同上,但p a t t e r n出现次数在n与m之间
现在详细讲解其中特殊含义
1、使用句点匹配单字符
例一:beg.n:以beg开头,中间夹一个任意字符。
例二:. . . .X C. . . .:共10个字符,前四个之后为XC
例三:列出所有用户都有写权限的目录或文件 :
ls -l |grep ...x..x..x
2、行首以^匹配字符串或字符序列
^只允许在一行的开始匹配字符或单词。
例如,使用ls -l命令,并匹配目录。
$ ls -l | grep ^d
3、在行尾以$匹配字符串或字符
可以说$与^正相反,它在行尾匹配字符串或字符, $符号放在匹配单词后。
例一:列出文件中所有以单词common结尾的行
$grep common$
版权声明:本文标题:Shell 脚本基础学习笔记 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/b/1713289099a627772.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论