Shell 命令挂后台执行

时间:2023-03-09 08:51:11
Shell 命令挂后台执行

  使用nohup命令,结合&

#!/bin/bash

#挂后台执行文件 kimbo_test.sh

nohup sh kimbo_test.sh >a.log >& &

说明:0 是标准输入(STDIN),1 是标准输出(STDOUT),2 是标准错误输出(STDERR)。

黑洞: /dev/null

如清空文件内容: cat /dev/null > kimbo_test.sh

常见的重定向:  sh command >> file_log.txt 2>&1  (表示将 stdout 和 stderr 合并后重定向追加到 file_log.txt 中)

例子: 查询liunx系统,是否按照Hive,Sqoop

#!/bin/bash

## 将标准错误()重定向到 /dev/null, 检测hive环境, $? 判断上一个命令是否执行成功
hive=$(which hive >/dev/null)
if [ $? -ne ];then
echo "没有安装或配置Hive环境!"
else
echo "已安装Hive。"
fi ## 检测sqoop环境
sqoop=$(which sqoop >/dev/null)
if [ $? -ne ];then
echo "没有安装或配置Sqoop环境!"
else
echo "已安装Sqoop。"
fi

截图:

Shell 命令挂后台执行