• execing process _ golang


    In the previous  example we looked at spawning external processes. We do this when we need an external process accessible to running Go process. Sometimes we just want to completely replace the current Go process with another one. To do this we'll use Go's implementation of classic exec function

    package main
    
    import (
        "os"
        "os/exec"
        "syscall"
    )
    
    func main() {
    
        binary, lookErr := exec.LookPath("ls")
        if lookErr != nil {
            panic(lookErr)
        }
    
        args := []string{"ls", "-a", "-l", "-h"}
    
        env := os.Environ()
    
        execErr := syscall.Exec(binary, args, env)
        if execErr != nil {
            panic(execErr)
        }
    }
    total 3656
    drwxr-xr-x  17 xjk  staff   578B Apr  1 13:19 .
    drwxr-xr-x+ 30 xjk  staff   1.0K Mar  6 14:00 ..
    -rw-r--r--@  1 xjk  staff   6.0K Mar 27 11:21 .DS_Store
    -rw-r--r--   1 xjk  staff   838B Mar 30 13:38 Reading.go
    -rw-r--r--   1 xjk  staff   553B Mar 27 13:12 URL.go
    -rw-r--r--   1 xjk  staff   598B Mar 30 13:45 Writing.go
    -rw-r--r--   1 xjk  staff   402B Mar 30 13:23 base64.go
    -rw-r--r--   1 xjk  staff   447B Mar 31 13:28 commandLineFlags.go
    -rwxr-xr-x   1 xjk  staff   1.7M Mar 31 13:21 commonLineArgument
    -rw-r--r--   1 xjk  staff   209B Mar 31 13:20 commonLineArgument.go
    -rw-r--r--   1 xjk  staff   261B Apr  1 13:02 environmentVariables.go
    -rw-r--r--   1 xjk  staff   303B Apr  1 13:22 execingProcess.go
    -rw-r--r--   1 xjk  staff   298B Mar 31 13:15 lineFilters.go
    -rw-r--r--   1 xjk  staff   384B Mar 27 13:04 number_parsing.go
    -rw-r--r--   1 xjk  staff   189B Mar 27 13:18 sha.go
    -rw-r--r--   1 xjk  staff   720B Apr  1 13:15 spawningProcess.go
    -rwxr-xr-x   1 xjk  staff   243B Mar 27 11:25 urllib001.py

    总结  :

      1 : ....

  • 相关阅读:
    diffstat命令
    v-if与v-show的区别
    常数时间插入、删除和获取随机元素
    diff命令
    C++ bitset的简单使用
    树的直径 | 简答的两道模板题
    Codeforces Round #544 (Div. 3)简单题解
    VIM 入门手册, (VS Code)
    PTA 天梯赛 L3-003 社交集群(并查集)
    L3-002 特殊堆栈 (双数组模拟栈)
  • 原文地址:https://www.cnblogs.com/jackkiexu/p/4383594.html
Copyright © 2020-2023  润新知