一、shell
脚本的建立
shell
脚本是一个文件,其中包含将由
shell
执行的一系列命令。
当运行一个
shell
脚本时,脚本文件中的每一条命令被传送给
shell
执行。
方法:
利用编辑器(如
vi
)
脚本执行:bash 脚本名 或者 ./脚本名增加执行权限:chmod a+x 脚本名
二、shell特殊字符
*:
匹配
任意字符
的出现。
?:
匹配任意
一个字符
。
[]:匹配括号内所限定的任何一个字符
双引号
”:双引号括起来的字符作为普通字符对待
$
、 倒引号
`
、反斜线
\
这三个仍保留其特殊功能;
$
表示变量替换,
用预先指定的变量值代替
$
和变量
`
倒引号表示命令替换
,
\
反斜线在后面字符是
$
、
`
、
”
、
\
、换行符之一时,表示转义字符,即不对后面字符特殊处理
单引号
’:
单引号括起来的字符都作为普通字符。
单引号保留空白符
用
反斜杠
消除单引号的特殊含义
倒引号
`
:也称为命令替换符
倒引号括起来的字符串被
shell
解释为命令行,每次先执行该命令行,然后用标准输出取代整个倒引号部分。
可利用这个功能进行
-
命令置换,即把倒引号括起来的命令执行结果赋给指定变量
.
三、输入/输出命令
read命令
利用
read
命令从键盘上读取数据,然后赋给指定的变量,可以
交互式
的为变量赋值。
echo命令
:
使用
echo
命令可以显示文本行或变量,或者把字符串输入到文件。
echo
命令有很多功能,其中最常用的是下面几个:
\c
不换行。
\f
进纸。
\t
跳格。
\n
换行。
-n
禁止换行
-e
解释转义字符
set
命令
功能
给位置变量赋值的另一种方法是使用
set
命令。
四、算法运算
expr命令
功能
该命令提供算术运算功能,并能对数字或非数字字符串进行计算。
五、条件测试
test
命令
功能
test
是
shell
内部命令,它计算参数表达式的值为真还是为假。
如果表达式为真,
test
返回
0
,
否则,返回非
0
值。
if -then -
elif
结构
if [condition_1 ]
then
commands_1
elif[ condition_2 ]
then
commands_2
…
else
commands_n
fi
case语句以case关键字开头,以esca结束
每个模式字符串后可以跟多条命令,其最后一条必须以两个分号(
;;
)结束
各个模式字符串应唯一,不应重复出现
可以用(*)作为最后一个模式字符串,可以匹配任何情况、
六、循环结构
while循环:while - do - done结构
until
循环:
until - do - done
结构
for
循环:
for - in - done
结构
●感悟:
shell编程的思想自我感觉是和c语言差不多只是编程的命令和格式不同而已,和c语言有较大的差异性,还是记得命令相对于较多shell编程还是要有思路,只要有思路我感觉编程就不会有太大的问题。