Linux mktemp命令用于建立暂存文件。
mktemp建立的一个暂存文件,供shell script使用。
mktemp命令专门用来创建临时文件,并且其创建的临时文件是唯一的。shell会根据mktemp命令创建临时文件,但不会使用默认的umask值(管理权限的)。它会将文件的读写权限分配给文件属主,一旦创建了文件,在shell脚本中就拥有了完整的读写权限,其他人不可访问(除了root)
参数:
- -q 执行时若发生错误,不会显示任何信息。
- -u 暂存文件会在mktemp结束前先行删除。
- [文件名参数] 文件名参数必须是以"自订名称.XXXXXX"的格式。
使用方法:
默认情况:
- 默认情况下,mktemp会在本地当前目录创建一个临时文件,创建临时文件时只需要创建模板文件,模板可以包含任意的文件名,文件末尾可以根据需要添加
n
个X
。Demo如下:
[root@master ~] # tempfile=$(mktemp test.XXXX)
[root@master ~] # echo $tempfile
test.coCi
[root@master ~] # mktemp test.XXX // 不能少于三个X
test.eIB
- -t 选项:
-t选项会强制mktemp命令在系统的临时目录中创建临时文件,创建时mktemp命令会返回临时文件的全路径。
[root@master ~] # mktemp -t test.XXXX
/tmp/test.1OKR
[root@master ~] # mktemp -t test.XXXXX
/tmp/test.jSwmV
[root@master ~] # mktemp -t test.XXXX
/tmp/test.sQTP
- -d 选项
-d选项告诉mktemp命令创建一个临时目录而不是临时文件