我正在运行下面的命令,并将两个参数传递给我的脚本文件(下面的命令是从java构造的):
sh /home/accure/Desktop/scripts/cronhandler.sh "/home/accure/Desktop/scripts/pipeline.sh 028d8ccb-4c46-4e02-a9b0-3c97a383daaf" "* * * * */5"
其中,< code > "/home/accure/Desktop/scripts/pipeline . sh 028 D8 CCB-4c 46-4 e02-a9b 0-3c 97a 383 daaf " 是第一个参数,< code > * * * * * * */5 " 是第二个参数,它基本上是一个cron表达式。
<code>cronhandler。sh是我的脚本文件,其中包含以下代码:
if [ "$#" -eq 2 ]
then
echo "Crontab with create & update functionality"
command=$1
cron_exp=$2
echo "cron_exp=$cron_exp"
echo "command=$command"
cron_exp=`echo $cron_exp | sed 's/"//g' `
command=`echo $command | sed 's/"//g' `
echo "cron_exp=$cron_exp"
echo "command=$command"
if [[ "$cron_exp" != " " && "$command" != " " ]]
then
crontab -l | grep -q "$command"
if [ $? -eq 0 ]
then
crontab -l | grep -v "$command" | crontab -
echo "CRON entry deleted successfully.."
else
echo "CRON entry deletion failed."
fi
crontab -l | grep -q "$command" || (crontab -l 2>/dev/null; echo "$cron_exp $command") | crontab -
if [ $? -eq 0 ]
then
echo "CRON entry added successfully.."
else
echo "CRON entry addition failed."
fi
fi
fi
我在运行脚本时收到的错误如下。实际上,它列出了当前工作目录中的文件和文件夹,而不是将cron表达式添加到cron选项卡。
带有创建功能的Crontab
注意:而是添加到crontab,cron表达式中的*
列出了我当前工作目录中的文件和文件夹。
下面给出了我调用命令行的Java代码:
字符串管道文件路径="sh /home/accure/Desktop/scripts/pipeline.sh028d8ccb-4c46-4e02-a9b0-3c97a383daaf";
String cronExp="* * * * */5";
pipelineFilePath = "\"" + pipelineFilePath + "\"";
cronExp = "\"" + cronExp + "\"";
command = "sh " + /home/accure/Desktop/scripts/cronhandler.sh + " " + pipelineFilePath + " " + cronExp;
runScript(command);
public void runScript(String script) throws InterruptedException {
final String cmd = script;
Thread runScript = new Thread(new Runnable() {
public void run() {
try {
DefaultExecutor executor = new DefaultExecutor();
CommandLine commandLine = CommandLine.parse(cmd);
executor.setExitValue(1);
int exitValue = executor.execute(commandLine);
} catch (Exception ex) {
}
}
});
runScript.start();
Thread.sleep(10000);
}
试着用单引号(< code>')代替双引号(< code>")来括住你的论点:
sh /home/accure/Desktop/scripts/cronhandler.sh '/home/accure/Desktop/scripts/pipeline.sh 028d8ccb-4c46-4e02-a9b0-3c97a383daaf' '* * * * */5'
这将防止您的外壳的文件名扩展。
我已经在网上看了,但我仍然无法理解如何将图形添加到JPanel 以下是我的panel类的代码: 我的主要方法是: 文本只会出现在屏幕的一小部分(这适用于我试图绘制的任何图形对象)。我做错了什么?
嗨,我对“石英时间表”很陌生。我有一个cron表达式 “0 0/24**?”--这意味着每个任务将每24小时执行一次。对吗? 如果是,时间表何时开始。例如,如果我在上午10点启动服务器,调度程序将每天上午10点执行。
我正在使用石英调度程序来安排我的工作。我有一个错误的cron表达式: 当我这样做的时候: is。但是当我查看表达式时,它显然是错误的。其他人也面临类似的问题吗? 注:包装为:包装组织。石英 石英的版本是:2.2.3 请检查来自的CronExpression类http://www.javadoc.io/doc/org.quartz-scheduler/quartz/2.2.3 我还尝试了类的方法,但
我在这里遇到了一个问题,我创建了一个actionListener,它旨在创建一个随机的人,并将其添加到JList中以显示在JScrollPane上。到目前为止,一切都很顺利,只是每当我单击JButton添加一个新的人员时,JList不会添加到当前列表中,而是每次都会替换它,因此JList上只显示一个项目。我知道问题发生在哪里,您将立即在actionevent行中看到它。不管怎样,谢谢你的帮助我的朋
我正在创建一个TicTacToe游戏。我把所有带有ActionListeners的后端放在按钮上,将按钮添加到面板,设置框架等等。 然而,当我运行程序时,我的JPanel似乎没有添加到JFrame中。我试过使用不同的布局,仔细检查是否确实放置了。为所有内容添加行,之前的所有帖子似乎都指向了我认为已经涵盖的内容。 如果这真的很直接,我提前道歉。 谢谢你的帮助。
我在Win7中使用cygwin版本2.3.1(0.291/5/3),并且已经尝试了几个小时来运行我的crontab计划作业。在我看来,可能成为问题的是我的cron进程和我的crontab进程有不同的所有者,我不知道如何解决这个问题。 我创建了一个crontab任务,它应该在第一分钟创建文件c:\crontest.txt,然后每隔一分钟更新一次。这不会发生的! 以下是我尝试运行此crontab时的控