bash脚本变量传递查找

lon*_*r21 3 variables bash 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
Run Code Online (Sandbox Code Playgroud)

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

Dan*_*ego 5

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

所以对于find表达式:

find . -amin -200 -regex ".*$rand_int.*"
Run Code Online (Sandbox Code Playgroud)