linux脚本输出到控制台1

时间:2014-11-12 09:45:04

标签: linux bash unix

我每周日晚上在Linux PC上使用cron作业运行脚本。当我以root身份登录时,我希望显示最后一个脚本执行的输出。

这是一个脚本msg.sh

#!/bin/bash
if [ -e /user/script/$start.sh ]
then 
   echo " starting  service "
else
   echo " service not started " 
   echo " Please check the start.sh file or manually start the service "
fi
exit 0

其输出:

starting  service 

service not started
Please check the start.sh file or manually start the service

如何在登录时显示此输出?

2 个答案:

答案 0 :(得分:2)

在您的cron作业中,将输出保存到某个文件:

#!/bin/bash

# drop the contents of a log file and create a new one
LOGFILE=/root/cronjob_status.log
date > $LOGFILE

if [ -e /user/script/$start.sh ]
then 
   echo " starting  service " >> $LOGFILE
else
   echo " service not started " >> $LOGFILE
   echo " Please check the start.sh file or manuly start the service " >> $LOGFILE
fi
exit 0

在以root身份登录时执行的/root/.bash_profile(假设您的shell为/bin/bash),cat该文件:

cat /root/cronjob_status.log

答案 1 :(得分:1)

保存到文件(afenster的答案)是一个很好的解决方案。

或者,您可以在cron配置文件中设置MAILTO变量。然后,Cron会将其运行的命令的任何输出发送到该地址。