我得到语法错误:word意外(期待“)”)

时间:2016-09-18 12:41:39

标签: arrays bash shell sh

当我运行以下代码时

#!/bin/bash
folder="~/Desktop/"
if [ -d "$folder" ]; 
    then
    cd $folder;
    listofpdf=$( find *.pdf -type f);
    fi
echo ${listofpdf};

for words in $listofpdf
do
array+=("$words")
done    

我得到“语法错误:单词意外(期待”)“)”。它似乎与数组变量有关。欣赏更正。提前致谢

1 个答案:

答案 0 :(得分:3)

虽然您的脚本是有效的bash脚本,但它不是有效的POSIX shell脚本:不支持数组。即使shbash的链接或副本,它也会以严格的POSIX模式运行。要运行带有bash扩展名的脚本,必须bash一起运行,方法是运行bash script或(如您所做)使用{{1}作为shebang并直接用#!/bin/bash

执行脚本