123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122 |
-
-
-
- exports.Script_NodeJS = function() {
- const execArgv = [];
- let script = "";
- const scriptArgv = [];
-
-
-
- process.argv.slice(2).forEach((arg) => {
- if (!script) {
- if (arg.startsWith("--")) {
- execArgv.push(arg);
- } else {
- script = arg;
- }
- } else {
- scriptArgv.push(arg);
- }
- });
-
- require("child_process")
- .fork(script, scriptArgv, {
- env: process.env,
- cwd: process.cwd(),
- stdio: "inherit",
- execArgv
- })
- .on("exit", code => {
- process.exit(code);
- });
- };
-
-
- exports.Script_ShellJS = async function() {
- const path = require("path");
- const child_process = require("child_process");
- const isWin = process.platform === "win32";
- const args = process.argv.slice(2);
-
- appendToPath(isWin, [
- __dirname,
- path.join(process.cwd(), "node_modules/.bin")
- ]);
-
- let index;
- if ((index = args.indexOf("-c")) !== -1) {
- args.splice(index, 1);
- }
-
- args[0] = args[0].replace(process.execPath, "node");
- let [cmdRuntime, cmdScript, ...otherArgs] = args[0].split(" ");
-
- if (cmdRuntime === process.execPath) {
- cmdRuntime = "node";
- }
-
- let cmd;
- if (cmdRuntime === "node") {
- if ([".", "/"].indexOf(cmdScript[0]) === -1) {
- cmdScript = await getSafeCrossPlatformPath(
- isWin,
- path.join(process.cwd(), cmdScript)
- );
- }
-
- cmd = child_process.fork(cmdScript, otherArgs, {
- env: process.env,
- cwd: process.cwd(),
- stdio: "inherit"
- });
- } else {
- cmd = child_process.spawn(cmdRuntime, [cmdScript, ...otherArgs], {
- env: process.env,
- cwd: process.cwd(),
- stdio: "inherit",
- shell: true
- });
- }
-
- cmd.on("exit", code => {
- process.exit(code);
- });
- };
|