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

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

cobra-cli 將所有參數(shù)和標(biāo)志傳遞給可執(zhí)行文件

cobra-cli 將所有參數(shù)和標(biāo)志傳遞給可執(zhí)行文件

Go
慕森王 2022-12-26 10:37:07
我有一個 cobra CLI 用于我自己的東西。現(xiàn)在我想添加常用的可執(zhí)行文件,例如 kubectl,calicoctl作為將使用所有參數(shù)和標(biāo)志的子命令mywrapper kubectl get all --all-namespacesmywrapper kubectl create deployment nginx --image=nginx --port=80重現(xiàn)眼鏡蛇項目mkdir mywrapper; cd mywrapper; go mod init mywrapper; cobra-cli init .并添加一個子命令,例如 kubectlcobra-cli add kubectl ./cmd/kubectl.go然后填充package cmdimport (    "fmt"    "os/exec"    "strings"    "github.com/spf13/cobra")var kubectlCmd = &cobra.Command{    Use:   "kubectl",    Short: "run kubectl",    Run: func(cmd *cobra.Command, args []string) {        out, err := exec.Command("/bin/bash", "-c", fmt.Sprintf("kubectl %v", strings.Join(args, " "))).Output()        if err != nil {            fmt.Println(err)        }        fmt.Println(string(out))    },}func init() {    rootCmd.AddCommand(kubectlCmd)}我現(xiàn)在可以運(yùn)行kubectl命令,例如 go run . kubectl get pods。但是當(dāng)添加標(biāo)志時它會失敗,例如 go run . kubectl get pods --selector app=nginx
查看完整描述

1 回答

?
一只斗牛犬

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

在 .之后傳遞你的標(biāo)志--。雙破折號 (--) 用于表示命令選項的結(jié)尾。在我們的例子中,需要區(qū)分傳遞給的標(biāo)志go和沒有傳遞的標(biāo)志。雙破折號后的所有內(nèi)容都不會被視為go的標(biāo)志。


我嘗試使用 gcloud:


package cmd


import (

    "fmt"

    "os/exec"


    "github.com/spf13/cobra"

)


var gcloudCmd = &cobra.Command{

    Use:   "gcloud",

    Short: "run gcloud",

    Run: func(cmd *cobra.Command, args []string) {

        out, err := exec.Command("gcloud", args...).Output()

        if err != nil {

            fmt.Println(err)

        }

        fmt.Println(string(out))

    },

}


func init() {

    rootCmd.AddCommand(gcloudCmd)

}

然后嘗試:


$ go run . gcloud compute regions list -- --filter="id<1250"


NAME          CPUS  DISKS_GB  ADDRESSES  RESERVED_ADDRESSES  STATUS  TURNDOWN_DATE

asia-east1    0/24  0/4096    0/8        0/8                 UP

europe-west1  0/24  0/4096    0/8        0/8                 UP

us-central1   0/24  0/4096    0/8        0/8                 UP

us-east1      0/24  0/4096    0/8        0/8                 UP

us-west1      0/24  0/4096    0/8        0/8                 UP

添加更多標(biāo)志:


$ go run . gcloud compute regions list -- --filter="id<1250" --format="table(name,id)"


NAME          ID

asia-east1    1220

europe-west1  1100

us-central1   1000

us-east1      1230

us-west1      1210


查看完整回答
反對 回復(fù) 2022-12-26
  • 1 回答
  • 0 關(guān)注
  • 88 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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