2

我正在通过脚本搜索文件。为了处理结果,find 正在用结果填充一个数组。我是这样装的

RANGE=$1
arr=( $(find /net/nas3/mediadata/xmlprodpictures/tui ! -iname "* *" -iregex '.*/big/[${RANGE}]/.*\(jpg\|gif\|png\|jpeg\)' -type f | sort) ) 

它不起作用,但如果我直接在行中设置参数,它会起作用。

正确转义的问题?

提前 THX

4

1 回答 1

2

尝试readarray改用:

RANGE=$1
readarray -t ARR < <(find /net/nas3/mediadata/xmlprodpictures/tui ! -iname "* *" -iregex ".*/big/[${RANGE}]/.*"'\(jpg\|gif\|png\|jpeg\)' -type f | sort)
printf "Value: %s\n" "${ARR[@]}"
于 2013-09-06T09:02:50.160 回答