"sudo iwlist wlan0 scan"コマンドが実行され、期待されるテキストが端末に返されたことを示すbash -x出力が添付されました。問題は、テキストがhiptail msgboxオプションとして渡されないことです。
他の「sudo...」コマンドを使用すると失敗し、「sudo..」コマンドのみを使用すると失敗します。私の考えでは、出力テキストに印刷されない文字があり、この問題が発生しているようです。
sudo iwlist wlan0 scan
wlan0 Interface doesn't support scanning : Network is down
whiptail --title 'Command sudo iwlist wlan0 scan output 1400' - -separate-output --scrolltext --msgbox '' 17 80 10
答え1
わからないときはいつでもstdoutをリダイレクトしてから、stderrを/ dev / nullにリダイレクトしてみてください。
たとえば、with を使用するとlsusb -h > /dev/null
出力が表示されますが、with を使用するとlsusb -h 2> /dev/null
出力がないため、ヘルプ出力が stderr に送信されます。
stderrをstdoutにリダイレクトする場合:
lsusb -h 2>&1
最初は明確ではありませんが、このコマンドが実行する作業はstderr(ファイル記述子#2)をstdout(ファイル記述子#1)にリダイレクトすることです。