2017-09-06 6 views
1

私は、ランダムな状況を持って、私はbashで複数の選択肢のメニューを使用して、私のリストの選択に複数の項目を追加するとき、メニューは、もはや私は何を得る"選択"する方法は、単一の列にオプションを表示するには?

echo "   [?] What would you like to do:" 
echo 
# End 

opt="" 
select recon in Enumeration General Web-Recon Services Msfvenom Other 
do 
opt="$recon" 
case $recon in 
Enumeration|General|Web-Recon|Services|Msfvenon|Other) 
     break 
     ;; 
*) 
     echo # Spacer 
     echo "You Sure? Try it again" 
     ;; 
esac 
echo $recon 
done 

行ずつ積み重ねないん次のようになります。それはこのように見えた場合、私はむしろ好むしかし

  [?] What would you like to do: 

1) Enumeration 3) Web-Recon 5) Msfvenom 
2) General  4) Services  6) Other 
#? 

1) Enumeration 
2) General 
3) Web-Recon 
4) Services 
5) Msfvenom    
6) Other 

そうするためのスクリプトを伝える方法はありますか? ありがとう

+0

用出力された後、次のスクリプトを確認し、要件に基づいて加算を行うことができます。[私はどのように表示するかを選択オプションを変更できます?](https://unix.stackexchange.com/q/203309/74329) – Cyrus

+0

ありがとうございました:) – Petr

答えて

1

selectコマンドの前にCOLUMNS=0を使用してください。

bash 4.2.8でテスト済みです。

0

あなたは

#!/bin/bash 
echo -n "[?] What would you like to do : " 
echo 
echo 

echo "1) Enumeration" 
echo "2) General" 
echo "3) Web-Recon" 

echo 
read entry 
echo 
case $entry in 
    1) 
     echo "Enumeration" 
     break 
     ;; 
    2) 
     echo "General" 
     break 
     ;; 
    3) 
     echo "Web-Recon" 
     break 
     ;; 
    default) 
     echo "Default Action" 
     break 
     ;; 
esac 

これは役立つかもしれない。この

 
[?] What would you like to do : 

1) Enumeration 
2) General 
3) Web-Recon 

2 

General 

関連する問題