gdialog не может вывести переменную

copied='cp -v *SNAPSHOT.jar /home/user/folder'
$copied

печатает информацию о скопированных файлах

, однако

gdialog --title "done" --clear --yesno "done $copied" 15 60

показывает команду, которая была выполнена, поэтому он показывает

done cp -v *SNAPSHOT.jar /home/user/folder

Как сделать, чтобы gdialog показывал информация о скопированных файлах?

1
задан 19 October 2011 в 10:37

1 ответ

Когда Вы пишете

copied='cp -v *SNAPSHOT.jar /home/user/folder'

это - только переменное присвоение, команда выполняется, когда Вы пишете

$copied

это эквивалентно

cp -v *SNAPSHOT.jar /home/user/folder

Если Вы хотите получить вывод команды, необходимо сделать

output=$(cp -v *SNAPSHOT.jar /home/user/folder)

это выполняется cp управляйте и помещенный stdout команды в переменной output. Затем можно использовать эту переменную для показа сообщения в gdialog:

gdialog --title "done" --clear --yesno "done $output" 15 60
2
ответ дан 19 October 2011 в 10:37

Другие вопросы по тегам:

Похожие вопросы: