Linux——创建临时文件

创建本地临时文件

默认情况下,mktemp会在本地目录中创建一个文件。要用mktemp命令在本地目录中创建一个临时文件,你只要指定一个文件名模板就行了。模板可以包含任意文本文件名,在文件名末尾 加上6个X就行了。

在这里插入图片描述
mktemp命令会用6个字符码替换这6个X,从而保证文件名在目录中是唯一的。你可以创建多个临时文件,它可以保证每个文件都是唯一的。

在脚本中使用,mktemp命令时,可能要将文件名保存到变量中,这样就能在后面的脚本中引用了。

#!/bash/shell
tempfile=$(mktemp test.XXXXXX)
exec 3>$tempfile
echo "output to tempfile" >&3
exec 3>&-
在/tmp目录创建临时文件

-t选项会强制mktemp命令来在系统的临时目录来创建该文件。在用这个特性时,mktemp命 令会返回用来创建临时文件的全路径,而不是只有文件名。

在这里插入图片描述

创建临时目录

-d选项告诉mktemp命令来创建一个临时目录而不是临时文件。

在这里插入图片描述

#!/bash/shell
#创建一个临时目录,进入该目录,并创建两个临时文件

tempDir=$(mktemp -d dir.XXXXXX)
cd $tempDir
tempfile1=$(mktemp temp.XXXXXX)
tempfile2=$(mktemp temp.XXXXXX)
exec 7> $tempfile1
exec 8> $tempfile2

echo "Sending data to directory $tempDir"
echo "This is a test line of data for $tempfile1" >&7
echo "This is a test line of data for $tempfile2" >&8

你可能感兴趣的:(Linux,linux,bash,运维)