第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

執(zhí)行外部命令并返回其輸出

執(zhí)行外部命令并返回其輸出

Go
吃雞游戲 2023-04-24 15:52:59
我正在嘗試執(zhí)行 linux 命令并將輸出轉(zhuǎn)換為 int。這是我當(dāng)前的代碼:package mainimport (    "os/exec"    "os"    "strconv"    _"fmt"    "log"    "bytes")func main(){    cmd := exec.Command("ulimit", "-n")    cmdOutput := &bytes.Buffer{}    cmd.Stdout = cmdOutput    err := cmd.Run()    if err != nil {      os.Stderr.WriteString(err.Error())    }    count, err := strconv.Atoi( string(cmdOutput.Bytes()) )    if err != nil {        log.Fatal(err)    }    if count <= 1024 {        log.Fatal("This machine is not good for working!!!")    }}這是我當(dāng)前的錯誤:2018/10/12 14:37:27 執(zhí)行:“ulimit -n”:在 $PATH 中找不到可執(zhí)行文件我不明白此錯誤的含義以及如何修復(fù)它。
查看完整描述

1 回答

?
小怪獸愛吃肉

TA貢獻(xiàn)1852條經(jīng)驗 獲得超1個贊

linux 中沒有ulimit可以運行的程序。

ulimit 是 shell 的內(nèi)置函數(shù)。因此,您需要運行一個 shell 并讓 shell 運行其內(nèi)部的 ulimit 命令。

cmd?:=?exec.Command("/bin/sh",?"-c"?"ulimit?-n")

您還必須從 ulimit 命令的輸出中刪除換行符,例如

count,?err?:=?strconv.Atoi(?strings.Trim(string(cmdOutput.Bytes()),"\n"))

更好的選擇是通過 go 中的系統(tǒng)調(diào)用 API 檢索這些限制


查看完整回答
反對 回復(fù) 2023-04-24
  • 1 回答
  • 0 關(guān)注
  • 126 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號