LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1646|回复: 3

脚本设置crontab中每1小时执行一次!请问为何shutdown -h +2不被执行!!

[复制链接]
发表于 2010-8-4 22:45:09 | 显示全部楼层 |阅读模式
[root@i ~_4143]$cat copy.sh
#!/bin/bash
#check and mv movie!
s1=`ps -e|grep sancho|gawk '{print $4}'`
if [ $s1 != sancho ]
then
  echo "No downloading!"
else
  date=`date +%m%d%H%M`
  source1=/temp/Mldonkey_Sancho/mldonkey-distrib-3.0.2/incoming/directories/
  source2=/temp/Mldonkey_Sancho/mldonkey-distrib-3.0.2/incoming/files/
  source3=/temp/Mldonkey_Sancho/mldonkey-distrib-3.0.2/temp/
  destination=/mnt/sda1/copy/
  a1=`ls $source1|wc -l`
  a2=`ls $source2|wc -l`
  a3=`ls $source3|wc -l`
  if [ $a1 -gt 0 ]||[ $a2 -gt 0 ]
  then
    echo "move `ls $source1 $source2`" >>/temp/move.log.$date
    mv $source1* $destination
    mv $source2* $destination
  elif [ $a3 -gt 0 ]
  then
    echo "----movie downloading----" >>/temp/download.log.$date
  elif [ $a1 -eq 0 ]&&[ $a2 -eq 0 ]&&[ $a3 -eq 0 ]
  then
    touch /temp/shutdown.log.$date
    shutdown -h +2
  fi
fi


[root@i ~_4143]$crontab -l
* */1 * * * /root/copy.sh

假设条件成立!!
而且shutdown 之前的touch /temp/shutdown.log.$date 也已经执行!!
 楼主| 发表于 2010-8-4 22:52:22 | 显示全部楼层

每小时.

Post by bchbch;2106763
[root@i ~_4143]$cat copy.sh
#!/bin/bash
#check and mv movie!
s1=`ps -e|grep sancho|gawk '{print $4}'`
if [ $s1 != sancho ]
then
  echo "No downloading!"
else
  date=`date +%m%d%H%M`
  source1=/temp/Mldonkey_Sancho/mldonkey-distrib-3.0.2/incoming/directories/
  source2=/temp/Mldonkey_Sancho/mldonkey-distrib-3.0.2/incoming/files/
  source3=/temp/Mldonkey_Sancho/mldonkey-distrib-3.0.2/temp/
  destination=/mnt/sda1/copy/
  a1=`ls $source1|wc -l`
  a2=`ls $source2|wc -l`
  a3=`ls $source3|wc -l`
  if [ $a1 -gt 0 ]||[ $a2 -gt 0 ]
  then
    echo "move `ls $source1 $source2`" >>/temp/move.log.$date
    mv $source1* $destination
    mv $source2* $destination
  elif [ $a3 -gt 0 ]
  then
    echo "----movie downloading----" >>/temp/download.log.$date
  elif [ $a1 -eq 0 ]&&[ $a2 -eq 0 ]&&[ $a3 -eq 0 ]
  then
    touch /temp/shutdown.log.$date
    shutdown -h +2
  fi
fi


[root@i ~_4143]$crontab -l
* */1 * * * /root/copy.sh

假设条件成立!!
而且shutdown 之前的touch /temp/shutdown.log.$date 也已经执行!!



root@i temp_4143]$crontab -l
00 */1 * * * /root/copy.sh
回复 支持 反对

使用道具 举报

发表于 2010-8-5 00:06:11 | 显示全部楼层
把shutdown命令的绝对路径写上,bash只搜索/bin目录。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2010-8-5 01:03:33 | 显示全部楼层
Post by onelay;2106776
把shutdown命令的绝对路径写上,bash只搜索/bin目录。
谢谢啦!
果然改成下面的就运行了!
/sbin/shutdown -h +2
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表