有什么方法可以 运行 在 Mac 和 Windows 中使用相同的 g运行t 命令但具有不同的选项或参数?

Is there any way to run same grunt command in Mac and Windows but with different options or arguments?

假设有一个 g运行t 命令 build_release_android,如下所示:

cordovacli: {
 .....

    build_release_android: {
                        options: {
                            command: 'build',
                            platforms: ['android'],
                            args: ['--release', "--buildConfig=..//build_android.json"]
                        }
                    }
.....
}

此命令可以在控制台中 运行 作为 g运行t cordovacli:build_release_android.

现在在 Mac 这工作正常,但如果 运行 在 Windows 控制台上使用相同的命令,我必须将路径更改为 "--buildConfig=..\build_android.json"

那么有什么方法可以 运行 命令而不需要手动做任何更改,每次 运行 在不同的平台上

在您的 gruntfile.js 中,您可以检查您环境的操作系统并可以使用任何合适的参数。例如:

var os = require('os');

...

cordovacli: {
    ...
    build_release_android: {
        options: {
            command: 'build',
            platforms: ['android'],
            args: /^win/.test(os.platform()) ?
                ['--release', '--buildConfig=..\build_android.json'] :
                ['--release', '--buildConfig=../build_android.json']
        }
    }
    ...
}