linux中脚本return,Shell脚本return、echo、printf

ehco和return

return  返回的是状态码,函数结束return不返回函数返回值可以在前面用 echo 返回函数返回值,return 返回指定函数退出状态码

echo  返回的是函数返回值,函数退出状态码是函数最后一条命令的退出状态码

test1.sh#!/bin/bash

function test(){

echo 200

}

ret=$(test)

echo "####$?"

echo "***********$ret"

2141b24d2258fd8f2151c44cc26007e7.png

test2.sh#!/bin/bash

function test(){

return 200

}

ret=$(test)

echo "####$?"

echo "***********$ret"

6186b2d7b08626bc5cf9925c54cca0ac.png

就bash而言, return命令只能用在函数中,不能直接用在脚本中

内置命令return用于从函数中返回, ..., return命令在函数中不是必须的,函数被调用时,函数内的命令执行完成后自然会返回到调用它的地方(一般是返回到主程序)。如果某函数中有return命令,执行到return时就返回。如果return在函数中不是最后一条命令,那么return后面的其他命令不再执行。

ehco和printf

终端打印的常用命令有 echo 和 printf 两种

1、echo Hello Word !

这种方法不能打印分号,因为分号在shell里被用作命令界定符,标记一个命令的结束。

ca2b3e57dd4252b32fa6fc5e1d34b454.png

2、 echo 'Hello Word !'

单引号的打印方式打印不了变量。

f6c93706cc862d5e7672151512f23430.png

3、echo "Hello World"

双引号中不能直接打印感叹号,需加set +H

52033c92d500a6bb05fa15edb5242c9c.png

echo 的参数

-e:识别输出内容里的转义序列

948c48566cc7a87e32a97afab68e4e4e.png

-n:忽略结尾的换行

50bdacaf33d2b4000cd68cbc820fe685.png

关于printf,须说明的两点是

1.printf的默认输出没有换行,换行需要自己加“\n”

2.printf支持格式化输出

《完》