devlog

cobra で `helpコマンド` を非表示にする

2022-09-26

こんにちは。

goでcliを作るときに cobra というライブラリを使いました。
デフォルトのコマンドを無効化するのに手間取ったので、メモ書きです。

helpコマンド を無効化する

cobra ではデフォルトで helpコマンド が有効化されています。
helpコマンド は SetHelpCommand で無効化できます。

import ( "github.com/spf13/cobra" ) var rootCmd = &cobra.Command{} rootCmd.SetHelpCommand(&cobra.Command{Hidden: true}) // helpコマンド無効化 rootCmd.Execute()

completionコマンド を無効化する

completionコマンドもデフォルトで有効化されています。
下記のように CompletionOptions.DisableDefaultCmd を true とすれば無効化できます。

import ( "github.com/spf13/cobra" ) var rootCmd = &cobra.Command{} rootCmd.SetHelpCommand(&cobra.Command{Hidden: true}) // helpコマンド無効化 rootCmd.CompletionOptions.DisableDefaultCmd = true // completionコマンド無効化 rootCmd.Execute()

links

  • 作成日
    2022-09-26
  • 更新日
    2023-05-04