我正在通过脚本搜索文件。要使用结果,find会使用结果填充数组。我正在以这种方式进行攻击
RANGE=$1
arr=( $(find /net/nas3/mediadata/xmlprodpictures/tui ! -iname "* *" -iregex '.*/big/[${RANGE}]/.*\(jpg\|gif\|png\|jpeg\)' -type f | sort) )
它不起作用,如果我直接在行中设置参数,它就会起作用。
正确转义的问题?
提前THX答案 0 :(得分: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[@]}"