我有一个在cronjob上运行的java jar,它将结果 - {date} .txt文件输出到目录中,不会通过电子邮件发送该文件的内容。有没有办法告诉cronjob一旦jar运行完毕就通过电子邮件发送该文件?
或者有没有办法设置echo以通过电子邮件发送目录中的最新文件?
我还尝试让我的java jar只打印results.txt名称而没有日期,但无法弄清楚如何做到这一点。如果可以做到这一点,则不需要第一个解决方案。
private static PrintStream makeOutputStream() throws FileNotFoundException {
String filename = "results.txt";
return new PrintStream(new FileOutputStream(filename));
}
public static void main( String[] args ) throws IOException, ParseException, InterruptedException {
Options options = new Options();
options.addOption("o", false, "Write output to stdout. By default, output is written to a file named results-[date-time].txt.");
options.addOption("s", true, "Use the given url as a base for the product page url. Default is " + SHOP_BASE_URL_DEFAULT);
CommandLineParser parser = new GnuParser();
CommandLine cmd = parser.parse(options, args);
Checker checker = new Checker(cmd.getOptionValue("s", BASE_URL_DEFAULT));
PrintStream stream = System.out;
if (cmd.hasOption("o")) {
stream = makeOutputStream();
}
}
答案 0 :(得分:0)
在bash中创建脚本并将其添加到该脚本运行中的crontab: