私のbashスクリプトにはclearコマンドが含まれています。dialogコマンドは奇妙な文字になります。ダイアログにこの出力が表示されなくても、clearコマンドを使用するにはどうすればよいですか?
これは、これを生成する方法の例です。
#!/bin/bash echo "starting..." clear echo "" echo "End"
次のようなdialogを使用しています:
bash /tmp/1.sh | dialog --progressbox 30 80
回答
clear の出力を端末にリダイレクトできます。
#!/bin/bash echo "starting..." clear >$(tty) echo "" echo "End"
clearは、標準出力に書き込みます。この出力は、(この方法でリダイレクトされた場合)とは異なる場合があります。スクリプトの標準出力。
sleepは別の問題です。パイプを介して書き込むと、データがラインバッファリングされず、sleepがそれを明らかにするように機能します。