unix中的if和while语句

时间:2017-07-26 09:38:10

标签: sql shell unix

任何人都可以帮助我理解以下脚本来自"排版"脚本中的部分内容以及脚本中while和if语句的作用:

**cust_id**   **source_id**     **value**
   10              11          update_value
   10              12          test_value2
   10              15          new_value2

1 个答案:

答案 0 :(得分:0)

在第一行中,您使用了内置函数,用于修改变量属性。您可以使用'声明'同样。两者几乎相等。

在你的if语句行中,你包含了分号;那个地方真的不需要。 unix中正确的if..else语法如下所示。 同样适用于while循环,只需删除分号

即可

If..else statement

x=5
y=20        
if [ $x == $y ] 
then   
echo "x is equal to y"
else
echo "x is not equal to y"
fi  

以上代码的输出:x不等于y

for while循环

a=0
while [ $u -lt 5 ]
do
echo $u
a=`expr $u + 1`
done

以上代码的输出: 0 1 2 3 4

-lt 5表示while循环最多5个限制。

如果变量或字符串的条件为null,则使用-z选项。 即。

$ip="";
$[-n "$ip"] && echo "ip is not null"
$[-z "$fip"] && echo "ip is null"

以上代码的输出:ip为null。