ダイアログボックス --menu は bash から文字列の代わりに整数を出力します。

ダイアログボックス --menu は bash から文字列の代わりに整数を出力します。

配列から項目を取得するbashに動的メニューを作成しましたが、ユーザーが特定の項目を選択すると、メニューに戻りコード(0または1)が表示されます。

repositorios=() ; i=0
while read -r line; do
    let i=$i+1
repositorios+=($i "$line")
done < <( find ~ -type d -name .git )

gerenciar_repositorios=$(dialog --stdout --extra-button --help-button \
--ok-label "Acessar repositório" \
--extra-label 'Criar repositório' \
--cancel-label 'Remover repositório' \
--help-label 'Cancelar' \
--backtitle "Bem vindo ao Git Bash `whoami`!" \
--title ' Gerenciar repositórios ' \
--menu 'Gerenciar repositórios' 0 0 0 \
${repositorios[@]}) ; echo $gerenciar_repositorios

; echo $gerenciar_repositoriosテスト目的でのみ使用してください!

ベストアンサー1

宿題で

repositorios+=($i "$line")

この整数は各行の最初の値になります。それは商標マニュアルの説明に記載--menu、終了時に印刷されます。 2番目の部分を使用するには:

repositorios+=("$line" "$line")

そして使用--no-tags単一列を表示するオプションです。これno-itemsこの場合、オプションは同様の結果を提供します。

おすすめ記事