Here's a simple example using 'zenity' instead of 'Xdialog':
Code:
# As in "$(seq 1 11)":
for ((i=1;i<11;i++)); do
# else it's too fast:
sleep 1s
echo "${i}0"; done |\
zenity --title "Teh Title" --progress --text "I R doing Something:" --percentage 0 --auto-close
The only difference is AFAIK the latter not having "--auto-close" and it shows you have to feed it the percentage from 'ftpput' output.