1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
|
1.位置参数
/temp/test.sh 3 89
$0 脚本本身
$1 脚本的第一个参数。(3)
$2 脚本的第二个参数。(89)
...
2.特殊变量
$#:位置参数的个数
$*,$@引用所位置参数
3.交互式脚本
read
echo -n -e "Enter a \033[31mnumber\033[0m:"
read num1
echo $mum1
-p:给定一个文件的路径,判断文件的类型
read -p "Enter file path:" fileName
file $fileName
4.给变量默认值
varName=${varName:-value}
a=42
a=${a:45}
a的值为42
5.文本处理工具grep、egrep、fgrep
根据用户指定的文本模式对目标文件进行逐行搜索,显示能够被模式所匹配到的行
grep [options] 'PATTERN' file,...
--color=auto
正则表达式:是一类字符所书写出的模式
元字符:不表示字符本身的意义,用于额外功能性的描述
基本正则表达式的元字符:(linux贪婪模式:尽可能长的去匹配字符)
字符匹配
. 任意单个字符
次数匹配
* 匹配前面字符任意次,含0次
.* 匹配前面任意长度字符任意次
\? 匹配前面字符0次或1次
\{m\} 匹配前面字符m次
\{m,n\} 匹配前面字符至少m次,至多n次
\{m,\} 匹配前面字符至少m次
\{0,n} 匹配前面字符至多n次
[] 指定范围内任意单个字符
[0-9] [[:digit:]]
[a-z] [[:lower:]]
[A-Z] [[:uper:]]
[[:alpha:]] 包含大小写
[[:alnum:]] 包含字母与数字
[[:space:]] 所有空白字符
[[:punct:]] 所有标点符号
|
本文转自wanglm51051CTO博客,原文链接: http://blog.51cto.com/studyit2016/1774579,如需转载请自行联系原作者