我正在使用对话框制作一个bash脚本。我的脚本在两个tar.gz中区分文件。每个添加文件都放在一个数组中,每个删除文件都放在另一个数组中。
所有文件都添加到我的两个数组中,当我想要回显它们时,它的作品
echo ${tabAjout[@]}
echo ${tabSuppr[@]}
输出结果为:
bonjour.txt.gpg test2.txt.gpg test.txt.gpg
hello.txt.gpg
现在我想在msgbox中添加它。
function affiche_message(){
#Personnalisation de la fenêtre
$DIALOG --title "$1" \
--msgbox "$2" 20 45
}
通话功能:
affiche_message "Title" "Delete : ${tabSuppr[@]} \n\n Add : ${tabAjout[@]}"
当我运行脚本时,msgbox只包含数组的第一个值。如果我通过$ {#tabAjout [@]}更改$ {tabAjout [@]},则对话框窗口回显该数组包含3个值。
答案 0 :(得分:36)
使用*
作为下标将数组扩展为单个词:
"${tabSuppr[*]}"
请参阅man bash
以获取解释。