repeat()函数

摘要:
为了避免这种情况,可以使用shell内置的命令冒号:,该命令的退出状态总是为0。尽管可读性不高,但是肯定执行速度快得多。

1.定义repeat函数:

repeat()

{

while true

do

$@ && return

done

}

while循环以函数参数形式(通过$@访问)传入命令;执行成功则返回,否则退出。

2.另一种更快捷的方式,把true替换为冒号:

repeat() { while :; do $@ && return; done }

在大多数系统中,true是作为/bin中的一个二进制文件来实现的,这就意味着每执行一次while循环,shell就不得不生成一个进程。

为了避免这种情况,可以使用shell内置的命令冒号:,该命令的退出状态总是为0。尽管可读性不高,但是肯定执行速度快得多。

3.加入延时

repeat() { while :; do $@ && return; sleep 30; done }

每30秒才执行一次。

结束。

免责声明:文章转载自《repeat()函数》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇重大事项(审计工作底稿)Windows10 切换用户访问共享下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

随便看看

Kafka 权限管理实战(最全整理)

JAAS文件定义了链接KafkaBroker所需的用户名和密码,以及用于在代理的各个节点之间进行通信的用户名和口令:用户名/口令:用于代理之间通信的用户名与口令。...

Jdk升级到11引起的问题:程序包javax.xml.bind.annotation不存在

您可以看到ELDict类中有一个引用:importjavax。xml。绑定注释XmlAttribute;虽然未使用,但它会导致mvn编译错误。在在线绑定中搜索“包javax.xml.bind.nannotation不存在”。结果是:包javax。xml。bind Annotation不存在-CSDN论坛2009年12月2日·无法编译使用jaxb的类,因为软件...

k8s集群上删除pod及service

删除k8s集群中的pod:找到pod的名称空间,并根据名称空间删除pod1。首先删除pod2,然后删除相应的部署。否则,删除pod是无用的。您还将看到pod,因为deployment.yaml文件中定义的副本数如下:delete the pod[root@test2~]#kubectlgetpod-njenkinsNAMEREADYSTATUSRESTART...

常用的Maven 插件

Maven本质上是一个插件框架。其核心不执行任何特定的施工任务。所有这些任务都委托给插件。多年来,Maven社区积累了大量经验,随后形成了成熟的插件生态系统。这个插件在一些Ant到Maven的迁移项目中特别有用。只要在父POM中配置规则,然后由每个人继承,Maven就会在规则被破坏时报告错误。...

H3C 12508 收集诊断信息

案例:H3C12508单板卡出现remove状态,需要配合研发收集诊断信息。)总体:12500交换机返回三种文件----故障时诊断信息,主备单板的日志文件,主备单板的诊断日志操作步骤:一、故障时诊断信息:disdiagnostic-informationdiag收集必须在问题出现的时候,单板重起之前执行。在save时请选择Y保存到CF卡方式。一般情况下,此命...

安装qmake与环境变量解析

如果你已经有了qmake,可以跳过这里,请看10分钟学会使用qmake。手动安装qmake在手工连编Qt之前,下面这些环境变量必须被设置:QMAKESPEC这个必须设置为你所使用的系统的平台和编译器的组合。当编译完成时,qmake已经可以使用了。这里对添加环境变量时,是在path里头添加,还是new一个变量有点疑惑。而如果是new的话,当我们在为程序添加路径...