14.3-创建临时文件mktemp
- Linux系统保留了一个特殊的目录位置,以供临时文件使用。Linux使用/tmp目录处理不需要永久保存的文件。
- 大部分Linux发行版的系统配置都是在启动时自动删除/tmp目录中的任何文件。
- 系统上的任何用户账户都有读取和写入/tmp目录中的文件的权限。
- 创建临时文件:mktemp命令可以轻松在/tmp文件夹中创建一个唯一的临时文件。shell创建该文件但是不使用默认的umask值。相反,它仅向文件所有者分配读取和写入权限,并使用户成为文件的所有者。创建文件之后,可以脚本对文件进行完整权限的读取和写入,但其他人都不能访问它。
mktemp命令 :
- [文件名参数] 文件名参数务必是 文件名.XXXXXX 格式
- -t 强制在系统的临时目录/tmp 下建立临时文件
- -d 建立临时目录,而不是临时文件
举例1 :
默认情况下,mktemp在本地目录创建文件。要使用mktemp命令在本地目录中创建临时文件,只需要指定一个文件名即可。
模块包括文本文件以及附加到文件名后的6个XXXXXX。
mktemp命令使用一个6字符代码替换6个XXXXXX,以确保文件名在目录中的唯一性。
举例2:
-t选项强迫mktemp在系统的/temp文件夹中创建临时文件。
但使用该选项时,mktemp命令返回用于创建临时文件的完整路径名,而不是文件名。
由于mktemp命令返回完整路径名,因此可以从Linux系统的任何目录引用临时文件,无论系统将临时目录放在哪个位置。
举例3:
-d选项让mktemp命令创建一个临时目录而不是一个文件。