Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Bash 将输出重定向到不使用cron的文件的脚本_Bash_Cron - Fatal编程技术网

Bash 将输出重定向到不使用cron的文件的脚本

Bash 将输出重定向到不使用cron的文件的脚本,bash,cron,Bash,Cron,我尝试每小时使用cron运行以下脚本 temp=`date` date=${temp// /_} exec 1> /home/ec2-user/benchmarks/results/cpu/$date sysbench --test=cpu --cpu-max-prime=100 run 问题是,尽管正在创建文件,但输出未重定向到该文件 谁能告诉我问题出在哪里?问题很可能是sysbench不在cron作业使用的路径上 而不是: sysbench --test=cpu --cpu-max

我尝试每小时使用cron运行以下脚本

temp=`date`
date=${temp// /_}
exec 1>  /home/ec2-user/benchmarks/results/cpu/$date
sysbench --test=cpu --cpu-max-prime=100 run
问题是,尽管正在创建文件,但输出未重定向到该文件


谁能告诉我问题出在哪里?

问题很可能是
sysbench
不在cron作业使用的
路径上

而不是:

sysbench --test=cpu --cpu-max-prime=100 run
使用
sysbench
的绝对路径,例如:

/usr/local/bin/sysbench --test=cpu --cpu-max-prime=100 run

大多数情况下,当某些东西在命令行上工作而在cron中不工作时,您可以使用
which sysbench

找到正确的绝对路径,问题是cron不在您的环境中运行。cron的路径类似于“/bin:/usr/bin”。“sysbench”住在哪里?我不确定。您可以帮助查找该命令吗?使用
which sysbench
查找该命令的路径,并将完整路径放入脚本中。另外,避免使用
date
作为变量名(和命令)。非常感谢,它现在可以工作了