Shell编程之循环语句和函数
Posted 封玖FJ
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Shell编程之循环语句和函数相关的知识,希望对你有一定的参考价值。
echo命令用法
格式
- echo [参数] [字符串]
常用参数
常用参数 | 说明 |
---|---|
-n | 表示输出不换行 |
-E | 禁止反斜杠转义,与-e参数功能相反 |
-e | 输出转义字符,将转义后的内容输出到屏幕上 |
- 在echo -e后面可以添加很多转义符
转义符 | 说明 |
---|---|
\\b | 相当于退格键,但前提是“\\b”后存在字符"\\b"表示删除前一个字符"\\b\\b"表示删除前两个字符 |
\\c | 不换行输出。后面无字符时相当于 echo -n"\\c"后有字符时,将不被输出 |
\\n | 换行,但是换行后的新行从“\\n”处开始另起一行 |
\\f | 换行,但是换行后的新行的开头位置连接着上一行的行尾 |
\\v | 与\\f相同 |
\\t | 转义后表示插入tab,即横向制表符\\r光标移至行首,但不换行,相当于使用“\\r”以后的数字覆盖之前相等长度的字符 |
\\\\ | 表示插入“\\”本身 |
echo命令截取前后字符
- 例:i=$(echo "11,22,33,44")
1.命令:echo $i%,* 输出结果:11,22,33 解析:从最后倒数到最短的匹配部分(用%)后面的逗号的地方被删除 2.命令:echo $i%%,* 输出结果:11 解析:从最后倒数到最长的匹配部分(用%%)后面的逗号的地方被删除 3.命令:echo $i#*, 输出结果:22,33,44 解析:从开头到最短的匹配部分(用#)后面的逗号的地方被删除 4.命令:echo $i##*, 输出结果:44 解析:从开头到最长的匹配部分(用##)后面的逗号的地方被删除
echo命令取值字符
i=1 2 3 4 5 6 7 8 9
#下标分别为 0 1 2 3 4 5 6 7 8 (1对用0,2对应1...)
echo $i ---> 1 2 3 4 5 6 7 8 9
echo $i:4:3 ---> 567 (下标为4,以此开头取3个)
echo $i:6:1 ---> 7 (下标为6,以此开头取1个)
a=123
echo $a:-abc ---> 123 (:前面的a有被赋值,就输入a的变量值)
echo $b:-abc ---> abc (:前面的b没有被赋值,就会显示后面的值abc)
echo $b:=abc ---> abc (这里:=相当于赋值了,如下)
echo $b ---> abc
a=gadak1234
echo $#a ---> 9 (显示字符个数)
for循环
- for循环,又有人称之为条件循环,或者for i in ,其实就是for循环的特性,次数和给与的条件是成正比的
for语句结构
读取不同的变量值,用来逐个执行同一组命令
for 变量名 in 取值列表
do
命令序列
done
- for取值的一些用法
for循环语句 实验题
以上是关于Shell编程之循环语句和函数的主要内容,如果未能解决你的问题,请参考以下文章
for / while / until 基础循环语句案例图解 shell编程之循环语句