Whiptailを使用するためにいくつかのzenityベースのスクリプトを変換するのに問題があります。
ジョブスクリプトは次のとおりです。
#!/bin/bash
xfreerdp /v:farm.company.com \
/d:company.com \
/u:$(zenity \
--entry \
--title="Username" \
--text="Enter your Username")
ホイップテールを使用するように変換しようとしていますが、空白の画面が表示されます。
これが私が今まで持っているものです:
#!/bin/bash
xfreerdp /v:farm.company.com \
/d:company.com \
/u:$(whiptail \
--inputbox "Username" 10 30)
私は何が間違っていましたか?
答え1
入力ボックスが表示されないのは、whiptail
キャプチャする標準出力にディスプレイが書き込まれるためです。入力結果はstderrに書き込まれますが、キャプチャしません。これが機能するには、代わりにキャプチャするstderr
コマンドの置き換えが必要ですstdout
。リダイレクトでこれを行うことができます。
#!/bin/bash
xfreerdp /v:farm.company.com \
/d:company.com \
/u:$(whiptail \
--inputbox "Username" 10 30 3>&1 1>&2 2>&3)