扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
摘要: Linux , Shell
10年积累的网站制作、网站设计经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先做网站设计后付款的网站建设流程,更有越城免费网站建设让你可以放心的选择与我们合作。
Shell中常用循环有 for , while
for循环只能用于 固定次数 的循环,因此不能无限循环和用于一些在后台守护进程一直运行的程序,语法语句如下
也可以写成一行,用 ; 分隔
取值列表内元素以空格隔开,如果元素带有空格则用引号包裹起来,例子如下
输出如下,可见循环到最后退出循环,引用变量依旧是最后一个取值列表元素
一行的写法
Shell的for循环也可以采用C语言的写法,注意是 双括号 ,用 分号; 间隔
一个简单例子
while循环语句结合条件测试使用,语法如下
举一个例子
在循环中使用条件测试实现复杂的逻辑,例如
也可以使用,||一行完成,省去if,fi
Shell的continue,break语句和Python一样,例子如下
break语句下输出4
continue语句下输出4 6 7 8 9 10
常见结合使用的循环体有 序列 , 数组 , 命令行传参 , 文件目录和文件
序列通过 seq 命令或者 {begin..end..step} 符号进行定义:
结合for循环使用案例
在Shell中使用小括号 () 定义数组,数组遍历使用 [@] 符号,防止元素有空格用双引号包起来,,例子如下
命令行传参遍历使用固定符号 $@ ,如果参数中有空格,用双引号括起来,例子如下
文件遍历使用 ls 命令,可以指定目录,以及通配符匹配
一个双重循环实现,注意 expr表达式中乘号要加转移符
(2)将某目录下大小大于阈值的文件移动到另一个文件
遍历循环一个目录,使用awk语法获得文件大小,将100m以上的文件移动到另一个文件夹
(2)指定开始日期和结束日期完成一个跑批任务
指定一个开始时间和结束时间,while从开始日期一直自增到结束日期循环结束,通过 date -d '2021-01-01 1day' +%Y-%m-%d 自增一天
1、编写一个shell脚本,在脚本中编写循环执行的代码(可以是死循环),然后在linux上运行这个脚本即可。
2、可以把这个脚本在当前运行,也可以让这个脚本在后台运行。
3、当前运行的脚本如果要kill掉的话,可以直接ctrl+c;后台运行的脚本要kill掉的话,可以PS查看进程ID号,然后执行“kill 进程ID”命令即可。
1、编写一个shell脚本,在脚本中编写循环执行的代码(可以是死循环),然后在linux上运行这个脚本即可。
2、可以把这个脚本在当前运行,也可以让这个脚本在后台运行。
3、当前运行的脚本如果要kill掉的话,可以直接ctrl+c;后台运行的脚本要kill掉的话,可以PS查看进程ID号,然后执行“kill 进程ID”命令即可。
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流