我想調用一個shell函數,並且在此函數處理的同時,應該顯示一個zenity進度對話框。 但是,我希望將該函數的echo'ed字符串存儲在變量中以供進一步處理,以及該函數的返回碼。Zenity - 進程返回字符串和返回碼(POSIX shell)
而這一切都在POSIX shell中。
我目前的做法是這樣的:
output="$(compress "${input}" | \
zenity --progress \
--pulsate \
--title="Compressing files" \
--text="Scanning mail logs..." \
--percentage=0 \
)";
if [ "$?" != "0" ]; then
echo "${output}"
exit 1
fi
進度對話框顯示出來,但是,$output
是在結束時清空。
任何想法如何獲得compress
函數的輸出?