在 CentOS 系统中,nohup 命令用于在后台运行程序,即使关闭终端也不会中断
my_nohup.sh 的 shell 脚本文件:#!/bin/bash
# 获取当前时间
current_time=$(date '+%Y-%m-%d %H:%M:%S')
# 获取命令行参数
command="$@"
# 运行命令并将输出重定向到日志文件
nohup $command >> my_nohup.log 2>&1 &
# 获取进程 ID
process_id=$!
# 将进程 ID 和时间戳写入日志文件
echo "[$current_time] Process ID: $process_id" >> my_nohup.log
chmod +x my_nohup.sh
my_nohup.sh 脚本运行程序。例如,要运行名为 my_program 的程序,可以这样做:./my_nohup.sh my_program
这将在后台运行 my_program,并将输出重定向到 my_nohup.log 文件。日志文件中将包含类似以下内容的条目:
[2022-01-01 12:34:56] Process ID: 12345
这样,您就可以使用自定义的日志格式来记录 nohup 命令的输出。如果需要进一步自定义日志格式,可以根据需要修改 my_nohup.sh 脚本中的时间戳和输出格式。