• 源码 os.StartProcess exec.Command StartProcess is a low-level interface. The os/exec package provides // higher-level interfaces. 启动另一进程 命令行参数 第二个 CommandLine.Parse(os.Args[1:])


    Go/src/os/exec.go:96

    // StartProcess starts a new process with the program, arguments and attributes
    // specified by name, argv and attr. The argv slice will become os.Args in the
    // new process, so it normally starts with the program name.
    //
    // If the calling goroutine has locked the operating system thread
    // with runtime.LockOSThread and modified any inheritable OS-level
    // thread state (for example, Linux or Plan 9 name spaces), the new
    // process will inherit the caller's thread state.
    //
    // StartProcess is a low-level interface. The os/exec package provides
    // higher-level interfaces.
    //
    // If there is an error, it will be of type *PathError.
    func StartProcess(name string, argv []string, attr *ProcAttr) (*Process, error) {
    testlog.Open(name)
    return startProcess(name, argv, attr)
    }

    // Parse parses the command-line flags from os.Args[1:]. Must be called
    // after all flags are defined and before flags are accessed by the program.
    func Parse() {
    // Ignore errors; CommandLine is set for ExitOnError.
    CommandLine.Parse(os.Args[1:])
    }



    package main

    import (
    "flag"
    "fmt"
    "time"
    )

    func main() {
    var TaskType string
    flag.StringVar(&TaskType, "TASKTYPE", "TODO", "")
    flag.Parse()
    flag.Usage()
    fmt.Println("TASKTYPE",TaskType)
    for {
    fmt.Println("time", TaskType, " ---", time.Now())
    time.Sleep(16 * time.Second)

    }
    }
    go build -o TFlag.exe

    package main

    import (
    "fmt"
    "os"
    )

    func main() {
    p, e := os.StartProcess("TFlag.exe", []string{"CommandLine.Parse(os.Args[1:])","--TASKTYPE=TRAPCAP"}, &os.ProcAttr{Files: []*os.File{os.Stdin, os.Stdout, os.Stderr}})
    fmt.Println(p, e)
    }








  • 相关阅读:
    12.22冲刺总结
    Android远程服务
    短信电话监听
    Android本地服务
    意图
    多线程下载
    异步HTTP请求
    提交数据到服务器
    通过HTTP访问网络资源
    观察者
  • 原文地址:https://www.cnblogs.com/rsapaper/p/15513423.html
Copyright © 2020-2023  润新知