gdialog无法输出变量

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

当你写作时

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命令并将命令的标准输出放入变量中output。然后您可以使用此变量在 gdialog 中显示消息:

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

相关内容