我需要有多个临时文件。我决定数组最适合它,因为我确实创建了 10 个临时文件,使用它们并删除了 10 个文件。通过研究,我想出了这个:
declare -A my_array
my_array=()
for i in `seq -w 1 10`
do
my_array[$i]= $(mktemp /tmp/$i.XXXX)
done
#Do stuff with the files in the array
for i in `seq -w 1 10`
do
rm my_array[$i]
done
Run Code Online (Sandbox Code Playgroud)
但是,这给了我错误:
./plot.sh: line 7: /tmp/01.PkUG: Permission denied
./plot.sh: line 7: /tmp/02.eFNZ: Permission denied And so on...
Run Code Online (Sandbox Code Playgroud)
我很困惑,因为当我在没有循环的情况下创建 10 个文件时,它工作正常,但显然非常混乱:
tmpfile1=$(mktemp /tmp/data1.XXX)
tmpfile2=$(mktemp /tmp/data2.XXX)
And so on...
#And then remove
rm $tmpfile1
rm $tmpfile2
And so on....
Run Code Online (Sandbox Code Playgroud)