Shell 脚本 - 真正的命令
shell 提供了一个界面,用户可以借助该界面轻松地与系统交互。为了直接与 shell 交互,我们使用操作系统。在基于 Unix 的操作系统上,每次我们使用终端编写命令时,我们都会与系统进行交互。为了解释或分析 Unix 命令,我们使用 shell。 shell 的主要工作是从用户那里获取命令并将它们转换成内核可以理解的形式。总而言之,我们可以将其视为用户与操作系统内核系统之间的媒介。内核是一种计算机程序,被认为是计算机操作系统的主要部分。
本文重点介绍 shell scripting - True 命令。
真正的命令:
该命令被称为“什么都不做,成功”。这是因为,在基于 UNIX 的操作系统上,该命令的主要目的是返回成功退出状态,这也意味着它什么也不输出。如果脚本的一部分始终返回 true,则应该使用它。其基本语法如下:
句法:
true [ arguments (optional) ]
不管你是否提供参数,真正的命令总是成功返回。
退出状态:
zero (0)
It signifies success
例子 :
在这个脚本中,我们使用了没有任何参数的 true 命令。
#!/bin/sh
# true command without any argument
true
输出:
例子:
在此脚本中,我们使用带有参数的 true 命令。
#!/bin/sh
# true command using an argument
true GeekforGeeks.txt
输出:
验证退出状态:
我们可以验证真正命令的退出语句,但该命令必须与另一个命令一起使用。为此,使用了一个特殊的 shell 变量 (?) 来存储真正命令的状态。此机制在以下脚本中进行了说明。
例子:
#!/bin/sh
# Evaluates true then print the statement
true; echo “Status of the previous command is $?.”
输出:
如果声明:
我们甚至可以在 if 语句中使用 true 命令。此机制在以下脚本中进行了说明。
例子:
#!/bin/sh
if true; then echo “True Command”; else echo “Not A True Command”; fi
输出:
例子:
要执行上述脚本中的 else 部分,我们可以在 true 命令之前使用 Not (!)运算符。
#!/bin/sh
# Now it evaluate false
if ! true; then echo “True Command”; else echo “Not A True Command”; fi
输出:
虽然声明:
我们也可以在 while 循环中使用 true 命令。它不仅用于在 shell 脚本中而且在其他编程语言中创建无限循环。
例子:
#!/bin/sh
# while true: Print "Infinite loop"
while true; do
echo "Infinite loop";
done
输出: