bash脚本变量传递查找

时间:2011-12-22 19:45:55

标签: bash variables find

我有一个简单的bash脚本,我使用split生成一些临时文件,做一些处理,然后尝试追踪最后的所有文件并合并它们

rand_int=$RANDOM
split -d -l $n_lines_split $1 $rand_int   #works fine

for f in $(find . -amin -200 -regex '.*$rand_int.*' ); do 
    (some processing here) ; 
done

我的问题是在find命令中,$ rand_int按字面解释,而我想使用变量的值。

2 个答案:

答案 0 :(得分:5)

在shell中,单引号(')导致内部的内容被字面解释。您要做的是在"的表达式周围使用双引号($rand_int)。

所以对于find表达式:

find . -amin -200 -regex ".*$rand_int.*"

答案 1 :(得分:1)

使用“”代替''

for f in $(find . -amin -200 -regex ".*$rand_int.*" ); do