关于shell脚本——echo、for语句、while语句、until语句
一、echo
1.1、echo命令用法
格式:echo [参数] [字符串]
常用参数
echo -n 表示输出不换行

echo -e 输出转义字符,将转义后的内容输出到屏幕上,后面可以添加很多转义符
\b相当于退格键,但前提是“\b”后存在字符"\b"表示删除前一个字符"\b\b"表示删除前两个字符

\c不换行输出。后面无字符时相当于 echo -n"\c"后有字符时,将不被输出

\n换行,但是换行后的新行从“\n”处开始另起一行\f换行,但是换行后的新行的开头位置连接着上一行的行尾

\v与\f相同
\t转义后表示插入tab,即横向制表符\r光标移至行首,但不换行,相当于使用“\r”以后的数字覆盖之前相等长度的字符
\\表示插入“\”本身

1.2、echo截取字符
例如a=$(echo "a,b,c,d")
1,echo ${a%,*}
得到的结果为:a,b,c
解析:从最后倒数到最短的匹配部分(用%)后面的逗号的地方被删除
2,echo ${a%%,*}
得到的结果为:a
解析:从最后倒数到最长的匹配部分(用%%)后面的逗号的地方被删除
3,echo ${a#*,}
得到的结果为:b,c,d
解析:从开头到最短的匹配部分(用#)后面的逗号的地方被删除
4,echo ${a##*,}
得到的结果为:d
解析:从开头到最长的匹配部分(用##)后面的逗号的地方被删除
二、for语句
读取不同的变量值,用来逐个执行同一组命令
for 变量名 in 取值列表
do
命令序列
done

2.1、实例
要求:批量添加几个用户,初始密码为123456,验证脚本
创建用户名文件

创建脚本文件

运行脚本

三、while语句
重复测试某个条件,只要条件成立则反复执行
while 条件测试操作
do
命令序列
done

3.1、实例
要求:用户名以a开头,按顺序进行编号,一共添加20个用户,初始密码设置为123456
创建脚本文件

运行脚本

查看用户

四、until语句
重复测试某个条件,只要条件不成立则反复执行
until 条件测试操作
do
命令序列
done

4.2实例
要求:计算1-50的整数和
创建脚本文件

运行脚本

关于shell脚本——echo、for语句、while语句、until语句的更多相关文章
- Shell脚本应用(for、while循环语句和case分支语句)
1.for:读取不同的变量值,逐个执行同一组命令,直到取值完毕退出,变量值以空格分隔 语法: for 变量值 in 取值列表 do 命令序列 done 2.while:重复测试某个条件,成立则执 ...
- shell脚本进阶之条件测试与条件语句
接着上篇博客,今天整理一下关于条件测试和条件语句方面的知识. shell脚本进阶之条件测试 在编写shell脚本时,经常需要对一些条件进行判断,可以使用测试命令test辅助完成测试过程.t ...
- shell 脚本之if、for、while语句
(1)if语句 root@ubuntu:/mnt/shared/shellbox/shellif# cat shellif.sh #!/bin/bash #推断字符串 if [ "$1&qu ...
- shell脚本--echo和printf打印输出
bash&shell系列文章:http://www.cnblogs.com/f-ck-need-u/p/7048359.html 注:本文关于引号等特殊符号的处理仅仅只是几个例子,想要彻底搞明 ...
- shell脚本基础 数值运算 判断 及if语句
数值运算 整数运算[三种,随便掌握一种即可]expr 数字 运算符 数字 [root@ceshiji ~]# expr 1 + 1(运算符号都是+ - * / 注:*需要\*.%是取余,余数只有0 1 ...
- shell脚本双引号、大括号、if语句注意事项
1.双引号的问题 变量用双引号括起来的意义 如果变量不用双引号括起来,比如echo $a,那么隐含的意义就是,把$a变量的字符串,按照空格.制表符.换行符等符号来分割开.然后把这些分割后的每一项再按 ...
- 用shell脚本创建sqlite表并添加sql语句--通用
重要使用的是EOF的功能,亲测和!功能一致:下面是测试代码 #!/bin/bash val=`ls`for v in ${val} do if [ ${v} == "test.db" ...
- Linux shell 脚本(一)
一.初识脚本 shell:一类介于系统内核与用户之间的解释程序.脚本:一类使用特定语言,按预设顺序执行的文件批处理.宏.解释型程序创建shell脚本:理清任务过程--整理执行语句--完善文件结构1.任 ...
- 编写shell脚本需要特别关注的注意点
shell脚本中的条件判断句式 1. if [ condition ];then statement fi 2. If [ condition ];then statement elif [ cond ...
随机推荐
- Gym 100008E Harmonious Matrices 高斯消元
POJ 1222 高斯消元更稳 看这个就懂了 #include <bits/stdc++.h> using namespace std; const int maxn = 2000; in ...
- 为什么要鼓励小型企业使用CRM系统
如果你是一家小公司的管理者,我相信你必须对工作流程.客户.市场销售.市场营销推广等业务流程进行总体规划和管理方法,这往往会使你的心有馀而力不足,引起 繁忙.心有馀而力不足.交流受到阻碍.管理方法和这样 ...
- 常用API文字版
常用API Object类 jvm启动,默认导入的是java.lang包中的内容,该包下的内容不需要import进行导入. 概念 该类是java体系中的根类,所有对象都将该类作为直接或者间接父类 所有 ...
- 关于Feign的Fallback处理
Feign的不恰当的fallback Feign的坑不少,特别与Hystrix集成之后. 在微服务引入Feign后,上线不久后便发现,对于一个简单的查询类调用,在下游返回正常的"404-资源 ...
- MindSpore模型精度调优实战:常用的定位精度调试调优思路
摘要:在模型的开发过程中,精度达不到预期常常让人头疼.为了帮助用户解决模型调试调优的问题,我们为MindSpore量身定做了可视化调试调优组件:MindInsight. 本文分享自华为云社区<技 ...
- 给App加上音频编辑功能,让你的用户Show起来
如今短视频当道,BGM无处不在,用户在每个能秀的地方都想要加上个性表达的音频.作为一个开发者,需不断探索和迎合用户的行为喜好,音频编辑功能成为用户在编辑个人信息.内容创作.生活分享等场景下的必需品. ...
- CentOS更换网易yum源
最新内容和地址参见http://mirrors.163.com/.help/centos.html 1 首先备份/etc/yum.repos.d/CentOS-Base.repo mv /etc/yu ...
- 【剑指offer】42.和为S的两个数字
42.和为S的两个数字 题目描述 输入一个递增排序的数组和一个数字S,在数组中查找两个数,使得他们的和正好是S,如果有多对数字的和等于S,输出两个数的乘积最小的. 示例: 输入:[1,2,4,7,11 ...
- 三分钟入门 InnoDB 存储引擎中的表锁和行锁
各位对 "锁" 这个概念应该都不是很陌生吧,Java 语言中就提供了两种锁:内置的 synchronized 锁和 Lock 接口,使用锁的目的就是管理对共享资源的并发访问,保证数 ...
- Guass消元总结
Guass消元 约旦·高斯消元法 求线性方程组 我们用一个\(n*(n+1)\)的矩阵存储线性方程组各项系数和零次项系数. 每一次找到一个未知数系数最大的方程,交换当前行方程和该方程,并将其他行该未知 ...