Linux Shell 脚本,获取命令运行的结果
在Linux Shell脚本中,可以使用$?
来获取上一个命令的退出状态码(exit status code),0通常表示命令成功执行。如果你想获取命令的输出结果,可以将命令的输出重定向到变量或文件。
以下是一个示例脚本,它执行一个命令,然后获取其退出状态码和输出:
#!/bin/bash
# 执行命令
output=$(ls /nonexistent_directory 2>&1)
status=$?
# 打印退出状态码和输出
echo "Exit Status: $status"
echo "Output: $output"
在这个脚本中,ls /nonexistent_directory
尝试列出一个不存在的目录,因此会失败。我们使用2>&1
将标准错误重定向到标准输出,这样就可以将错误信息同样存储到output
变量中。
$?
保存了ls
命令的退出状态码,而$output
变量包含了命令的输出结果。脚本接着打印这些值,你可以根据需要进行相应的处理。
评论已关闭