嵌入式Linux– Shell Scripting 102

上一次“Scripting 101”,我们介绍了Linux环境中bash shell脚本的概念。快速检查了一些基本结构,例如创建变量。这足以让某人启动并运行,但实际上并没有’就做复杂的事情而言,要吃很多的肉。这次,在脚本201中,我们将研究控制脚本执行的一些更复杂的方法,例如查询用户信息,循环和使用条件语句。

 

具有运行脚本的能力很棒,但是如果脚本可以’如果向用户查询信息并且必须具有硬编码的信息,则该脚本的用途将受到严重限制。有时,脚本会想要知道路径,文件或文件夹的名称,变量的默认值等等。这可以使用读取以非常直接的方式完成。阅读将提示用户输入信息。在使用读取之前,最好先使用echo来请求所需的信息。这样,用户就知道要输入什么。在清单1中可以看到一个简单的示例,其中read用于获取脚本创建的文件夹的名称。

 

清单1

清单1–使用阅读提示输入信息

 

就像在任何标准计算机程序中一样,在脚本中控制程序流也很重要。有多种使用熟悉的条件语句来执行此操作的方法,例如if,for和while。尽管熟悉这些内容,但实际实现与C / C ++中的预期实现略有不同。例如,if以fi结尾,而不是简单地以一行结尾或使用方括号来结束该语句。脚本形式可以采用三种不同的形式。它们与其他语言相似。它们包括单个if,if else和if else if语句。清单2中可以看到该格式。

 

Listing2
清单2– Forms of if

 

一个很好的例子是检查用户输入是否等于指定的数字。除了测试条件语句之外,这还将利用我们刚刚讨论的read函数。清单3显示了如何实现。

 

Listing3

清单3–检查用户输入

 

还有一些熟悉的循环结构,例如while循环。此条件与if的形式类似,不同之处在于它使用while [condition];。而不是if [condition];然后。清单4中提供了一个示例。

 

Listing4

清单4– Using a While Loop

 

虽然bash脚本中还使用了其他循环语句和条件语句,但这些语句为您提供了基础知识。如果您想更进一步,请搜索如何创建for循环以及do直到循环。您会发现它们遵循与if和while条件类似的格式。

发表评论

您的电子邮件地址不会被公开。 必需的地方已做标记 *

该网站使用Akismet减少垃圾邮件。 了解如何处理您的评论数据.