Go에서 원활하게 Bash 스크립트 실행
Golang에서 bash 스크립트를 실행하면 표준 os/exec 방법을 사용하는 것이 어려울 수 있습니다. 전체 sh 파일을 효과적으로 실행하려면 다음 단계를 따르세요.
직접 실행의 경우:
스크립트 경로와 함께 /bin/sh 사용:
cmd := exec.Command("/bin/sh", mongoToCsvSH)
예제 스크립트(경로 및 실행 권한 집합 가정):
OIFS=$IFS; IFS=","; # fill in your details here dbname=testDB host=localhost:27017 collection=testCollection exportTo=../csv/ # get comma separated list of keys. do this by peeking into the first document in the collection and get his set of keys keys=`mongo "$host/$dbname" --eval "rs.slaveOk();var keys = []; for(var key in db.$collection.find().sort({_id: -1}).limit(1)[0]) { keys.push(key); }; keys;" --quiet`; # now use mongoexport with the set of keys to export the collection to csv mongoexport --host $host -d $dbname -c $collection --fields "$keys" --csv --out $exportTo$dbname.$collection.csv; IFS=$OIFS;
이동 코드:
var mongoToCsvSH string func executeMongoToCsv() { out, err := exec.Command(mongoToCsvSH).Output() if err != nil { log.Fatal(err) } fmt.Printf("output is %s\n", out) }
결론:
이 단계에 따라 직접 또는 /bin/sh를 통해 Golang의 bash 스크립트를 효과적으로 실행할 수 있습니다. .
위 내용은 Go에서 Bash 스크립트를 어떻게 원활하게 실행할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!