shell脚本echo打印指令返回值
时间: 2023-06-30 21:17:22 浏览: 95
你可以通过 `$?` 获取上一个指令的返回值,然后使用 `echo` 打印出来。具体的脚本如下:
```
#!/bin/bash
ls -l
ret=$?
echo "ls returned $ret"
```
在这个例子中,脚本执行了 `ls -l` 指令,并将返回值存储在变量 `ret` 中。然后使用 `echo` 打印出 `ls` 指令的返回值。
相关问题
shell 脚本如何检查脚本返回值
在 shell 脚本中,可以使用 `$?` 变量来获取上一个命令的返回值。一般情况下,返回值为 0 表示命令执行成功,非零值表示命令执行失败。可以使用 `if` 语句来检查命令的返回值,例如:
```
command
if [ $? -eq 0 ]; then
echo "command succeeded"
else
echo "command failed"
fi
```
在上面的例子中,`command` 是需要执行的命令。如果命令执行成功,那么 `$?` 的值就是 0,`if` 条件就会成立,输出 "command succeeded";否则,`if` 条件不成立,输出 "command failed"。
shell脚本获取函数返回值
要在Shell脚本中获取函数的返回值,可以使用`$?`特殊变量。在函数调用后,可以通过`$?`来获取函数的返回码。一般来说,返回码为0表示函数执行成功,非零值表示出现错误。
下面是一个示例:
```bash
#!/bin/bash
# 定义一个函数,返回当前日期
get_date() {
date "+%Y-%m-%d"
}
# 调用函数并获取返回值
get_date
result=$?
# 打印返回值
echo "函数返回值为: $result"
```
在上面的例子中,`get_date`函数返回当前日期,并将结果保存在`result`变量中。然后通过`echo`语句打印出返回值。
注意:如果函数内部使用了`return`语句来显式地指定返回值,那么通过`$?`获取的将是该指定的返回值。如果函数没有使用`return`语句,那么通过`$?`获取的将是函数最后一条命令的返回码。