【问题标题】:What is the equivalent of a Windows batch file on the Mac operating system?Mac 操作系统上的 Windows 批处理文件相当于什么?
【发布时间】:2016-05-09 00:03:33
【问题描述】:

我正在将一个涉及 ProcessBuilder 和批处理文件的 Java 程序从 Windows 移植到 Mac,并且特定于 Windows 的应用程序具有以下代码。

批处理文件如下:

@echo off
setlocal

start /wait java BatchWakeMeUpSomehow

if errorlevel 1 goto retry
echo Finished successfully
exit


:retry
echo retrying...
start /wait java BatchWakeMeUpSomehow

这是Java代码:

public class WakeMeUpSomehow {
    static class Message extends Thread {

        public void run() {
            try {

                while(true)
                {
                    System.out.println("Hello World from run");

                }
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    }

    public static void main(String[] args) {
        try {
            Runtime.getRuntime().addShutdownHook(new Message());
            while(true)
            {
                System.out.println("Hello World");
                Thread.sleep(100);
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

我需要的是 - 如何在 Mac OS(基于 linux)上创建类似的批处理文件。我知道 Mac 上没有批处理文件。

非常感谢您的帮助。

【问题讨论】:

标签: java windows macos batch-file


【解决方案1】:

我会使用类似以下的内容:

#!/bin/bash
name=$1
javac $name.java
java $name 
exitCode="${?}"
if [[ $exitCode==0 ]]; then
    echo "ok"
else echo "not ok"
fi

脚本将您的 java 名称作为参数,编译并执行它。最后,它会在执行结束时为您提供结果状态。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-03-22
    • 2011-05-20
    • 1970-01-01
    • 1970-01-01
    • 2015-11-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多