잠시만 기다려 주세요

     '바다아이 사이트는 윤석열 정부 탄핵을 지지합니다.'
전체검색 :  
이번주 로또 및 연금번호 발생!!   |  HOME   |  여기는?   |  바다물때표   |  알림 (16)  |  여러가지 팁 (1059)  |  추천 및 재미 (156)  |  자료실 (22)  |  
시사, 이슈, 칼럼, 평론, 비평 (613)  |  끄적거림 (136)  |  문예 창작 (716)  |  바람 따라 (75)  |  시나리오 (760)  |  드라마 대본 (248)  |  
살인!


    golang

golang - golang 시스템 명령, 쉘 명령어 실행, 콘솔 Exec a shell command in Go, 스크립트 실행, 콤맨드
이 름 : 바다아이   |   조회수 : 11409         짧은 주소 : https://www.bada-ie.com/su/?941591786624
가끔 golang 에서 시스템 명령어를 실행해야 하는 경우가 생깁니다.
이럴 때 아래처럼 하시면 편하게 실행하실 수 있습니다.
함수가 여러가지 있습니다. 아래 보시면 자세히 나와 있습니다.
https://golang.org/pkg/os/exec/ 


단순하게 데몬 리부팅을 위해 실행이면

package main

import (
	"os/exec"
)

func main() {
	cmdStr := "sh aaa.sh"
	cmd := exec.Command("/bin/sh", "-c", cmdStr)
	_ = cmd.Run()
}


하나의 단순 명령에서 결과값 리턴... 

package main

import (
	"fmt"
	"log"
	"os/exec"
)

func main() {
	out, err := exec.Command("date").Output()
	if err != nil {
		log.Fatal(err)
	}
	fmt.Printf("The date is %s\n", out)
}


옵션이 있어 실행 후 결과 리턴이면

package main

import (
    "fmt"
    "os/exec"
    "strings"
)

// RunCMD is a simple wrapper around terminal commands
func RunCMD(path string, args []string, debug bool) (out string, err error) {

    cmd := exec.Command(path, args...)

    var b []byte
    b, err = cmd.CombinedOutput()
    out = string(b)

    if debug {
        fmt.Println(strings.Join(cmd.Args[:], " "))

        if err != nil {
            fmt.Println("RunCMD ERROR")
            fmt.Println(out)
        }
    }

    return
}

func main() {
    args := []string{"-a", "-l"}
    output, err := RunCMD("ls", args, true)

    if err != nil {
        fmt.Println("Error:", output)
    } else {
        fmt.Println("Result:", output)
    }
}


참고 : https://stackoverflow.com/questions/6182369/exec-a-shell-command-in-go
| |





      1 page / 6 page
번 호 카테고리 제 목 이름 조회수
179 golang golang , ... 바다아이 1825
178 golang golang , map . 바다아이 1407
177 golang Golang (, , data ) , ... 바다아이 1466
176 golang golang sort ... 바다아이 1706
175 golang golang html.EscapeString html.UnescapeString input value ... 바다아이 1798
174 golang golang go.mod go.sum . GOPATH SRC not module, 1.16 . 바다아이 5097
173 golang go 1.16 ... is not in GOROOT.. GOPATH .... . 바다아이 6013
172 golang , String Formatting 바다아이 7645
171 golang rand.Intn , random, , . 바다아이 7115
170 golang golang ... 바다아이 10253
169 golang golang gopath, goroot .. golang 바다아이 7759
168 golang golang ... Force download file example 바다아이 9566
167 golang golang , , cpu, memory, disk 바다아이 10848
166 golang golang , ... GOOS, GOARCH 바다아이 8605
165 golang golang checkbox ... 바다아이 8372
164 golang golang , , http .... 바다아이 8129
163 golang golang nil , nil , nil ... 바다아이 8478
162 golang 2 golang, go , .... golang .... 바다아이 11356
161 golang golang postgresql, mysql, mariadb ... ` Grave () .. .. 바다아이 8672
160 golang golang postgresql mysql, mariadb scan , null .. 바다아이 8815
159 golang golang , iconv 바다아이 11621
158 golang golang quote escape, unquote 바다아이 9068
157 golang golang , http errorLog , , ... 바다아이 9137
156 golang golang interface , 바다아이 8584
155 golang golang struct .... 바다아이 9317
154 golang golang map map , 바다아이 8777
153 golang golang map .... .... 바다아이 8306
152 golang golang slice copy 바다아이 8428
151 golang golang goto 바다아이 9315
150 golang golang slice sort , int, string, float64 바다아이 8790
| |









Copyright ⓒ 2001.12. bada-ie.com. All rights reserved.
이 사이트는 리눅스에서 firefox 기준으로 작성되었습니다. 기타 브라우저에서는 다르게 보일 수 있습니다.
[ Ubuntu + GoLang + PostgreSQL + Mariadb ]
서버위치 : 오라클 클라우드 춘천  실행시간 : 0.07118
to webmaster... gogo sea. gogo sea.