在Linux中有很多方法可以永远循环(或直到您决定停止),您可以在命令行或脚本中执行。for和while命令使这变得非常容易。关于相应的语法和策略,只有几件事要记住。使用while的最简单的永远循环之一是使用while命令,后跟条件true。您不必使用while[1-eq1]或类似测试之类的逻辑。whiletrue测试意味着循环将一直运行,直到您使用CTRL-C停止循环、关闭终端窗口或注销。下面是一个示例:$whiletrue>do>echoKeeprunning>sleep3>doneKeeprunningKeeprunningKeeprunning^C您也可以使用while:来做同样的事情。这里的关键是:总是返回成功,就像whiletrue一样,这个测试永远不会失败并且循环继续运行:$while:>do>echoKeeprunning>sleep3>doneKeeprunningKeeprunning^C如果你在脚本,并且想提醒使用它的人如何退出脚本,那么可以使用echo命令添加提示:while:doechoKeeprunningecho"PressCTRL+Ctoexit"sleep1done使用forfor命令还提供了一种简单的方法来永远循环。虽然不像whiletrue那样明显,但语法相当简单。您只需要在有界循环中替换参数,这通常类似于“c从1开始递增直到5”:$for((c=1;c<=5;c++))不指定任何参数case:$for((;;))没有起始值、递增或退出测试,这个循环将永远运行或被迫停止:$for((;;))>do>echo继续运行>echo“PressCTRL+Ctoexit”>sleep2>doneKeepyourspiritsupKeepyourspiritsupKeepyourspiritsup为什么要一直循环?实际上,您不想永远循环下去,但在您想要回家、工作完成或遇到问题后再退出之前运行的情况并不少见。任何构造为无限循环的循环都可以设置为根据各种条件退出。该脚本将处理数据直到下午5点,或者当检查发现它第一次超过下午5点时:#!/bin/bashwhiletruedoif[`date+%H`-ge17];thenexit#exitscriptfiechokeeprunning~/bin/process_data#dosomeworkdone如果你想退出循环而不是脚本,使用break命令而不是exit。#!/bin/bashwhiletruedoif[`date+%H`-ge17];然后break#exitloopfiechokeeprunning~/bin/process_datadone...在这里运行其他命令...总结永远循环很容易。指定停止循环的条件需要一些额外的努力。
