1.位置参数
参数名称 功能介绍
$0 脚本名称
$1~$9 脚本执行时输入的第1至第9个参数
$# 输入的参数个数
$? 脚本返回值
$* 参数的具体内容
2.通配符
通配符名称 作用 实例
* 匹配任意个字符,可以为0个或多个 a*b
? 匹配一个字符 a?b
[list] 匹配list中的任意一个字符 a[abc]b
[!list] 匹配除list中的所有字符 a[!abc]b
[c1-c2] 匹配c1-c2中的任意字符,c1和c2之间必须为连续字符序列,如abc a[1-5]b
{string1,string2,.} 匹配string1或string2中的一个字符串 a{123,456,789}b
3.元字符
名称 作用 使用实例
^ 行首定位符 \^1\
$ 行尾定位符 \$1\
. 匹配单个字符 \1.2\
* 匹配0或多个位于*前的字符 \1*2\
[] 匹配一组字符中的任意一个 [list]
[x-y] 匹配指定范围内的任意字符 [a-g]
[^] 匹配不在指定范围内的任意字符 [^abc]
\ 用来转义元字符 \*
\< 词首定位符
^\> 词尾定位符
x\{m\} 字符x出现m次 x\{3\}
x\{m,\} 字符x至少出现m次 x\{3,\}
x\{m,n\} 字符x重复出现m到n次 x\{3,5\}
4.管道: 一种进程间的通信机制,从管道读取数据是一次性操作,数据一到被读取,它就被从管道中清空,释放数据以便写入更多数据。
#示例 管道符号的使用
#! /bin/bash
cat hello.sh ! head -n3
_________________________________________________________________
chmod u+x hello.sh
./hello.sh
5.引号的使用
单引号的作用是将引号中的内容全部作为普通字符处理,在单引号内没有任何特殊字符。
双引号除了将$ ` \ 这三个符号作为特殊字符处理之外,其他字符都是作为普通字符处理
倒引号是将字符串中的命令执行结果来替换作为命令出现的字符串
#实施 使用倒引号
#! /bin/bash
echo "登录系统的用户为:"`who`
echo "当前的时间为:"`date`
_________________________________________________________________
登录系统的用户为:
ben tty7 2017-05-12 11:30 (:0)
当前的时间为
2017年 05月 12号 星期三 11:31::14 CST
网友评论