我们已经知道了如何在Linux中创建一定大小的文件。在许多情况下,创建具有给定大小的文件会很有帮助。例如,在部署新的文件服务器后,您可能需要检查文件上传限制,文件最大上传大小和文件*载下**速度等。在这种情况下,您可以创建特定大小的文件并在文件服务器上使用它们进行测试。还有一个名为“mktemp”的专用命令行工具,可用于创建临时文件和目录。mktemp命令可以安全地创建临时文件或目录并打印其名称。所有文件和目录都将保存在系统的临时目录中,即/tmp 下。所以你不需要手动清理它们。重新启动系统后,这些临时文件将自动消失。

mktemp命令教程(附带示例)
Mktemp是GNU coreutils 包的一部分。所以根本不用担心要怎么去安装。我们现在将看到一些实际的例子。
要创建新的临时文件,只需运行:
$ mktemp
您将看到如下输出:
/tmp/tmp.yjcVSaKkuv
正如您在输出中看到的那样,它在/ tmp目录中创建了一个随机名为“tmp.yjcVSaKkuv”的新临时文件。这个文件只是一个空文件。
那么临时目录又是怎样的呢?要创建临时目录,请使用-d 选项。
$ mktemp -d
这将在/tmp文件夹中创建一个随机名的空目录。
示例输出:
/tmp/tmp.vrhruN1WVX
所有文件都将使用u + rw 权限创建,而目录使用的是u + rwx 权限。
您可以使用ls命令验证文件或目录权限。
$ ls -al /tmp/tmp.yjcVSaKkuv -rw------- 1 sk sk 0 Aug 22 16:51 /tmp/tmp.yjcVSaKkuv $ ls -al /tmp/tmp.vrhruN1WVX/ total 8 drwx------ 2 sk sk 4096 Aug 22 16:58 . drwxrwxrwt 12 root root 4096 Aug 22 17:36 ..
建议阅读:
- 如何巧妙地在Linux上从一个文本文件创建多个目录
正如我已经说过的,所有文件和目录都是使用随机文件名创建的。当然,我们还可以使用自定义名称创建临时文件或目录。为此,你需要在文件名末尾添加至少3个连续的'X',如下所示。
$ mktemp ostechnixXXX ostechnixq70
同样,要创建目录,只需运行:
$ mktemp -d ostechnixXXX ostechnixcBO
请注意,如果选择自定义名称,将在当前工作目录中创建文件/目录,而不是/tmp。在这种情况下,您需要手动清理它们。
另外,您可能已经注意到,文件名中的X会被替换为随机字符。但是,您可以添加任何后缀。
例如,我想在文件名的末尾添加“blog”。因此,我的命令是:
$ mktemp ostechnixXXX --suffix=blog ostechnixZuZblog
现在我们在文件名末尾有后缀“blog”。
如果您不想创建任何文件或目录,只需执行如下所示的干运行即可。
$ mktemp -u /tmp/tmp.oK4N4U6rDG
如需帮助,请运行:
$ mktemp --help
为什么我们需要mktemp?
您可能想知道为什么我们需要“mktemp”,因为我们实际上可以使用“touch filename”命令轻松创建空文件。mktemp命令主要用于创建具有随机名称的临时文件/目录。所以,我们不需要费心找出这些名字。由于mktemp随机化名称,因此不会发生任何名称冲突。此外,mktemp使用权限600安全地创建文件/目录,因此其他用户无法访问它。有关更多详细信息,请查看man page。
$ man mktemp

本文译自: The mktemp Command Tutorial With Examples For Beginners
译者: EmuLab
校对: OpenView
原文及本文遵循: [CC BY-NC协议]
推荐阅读(点击跳转):
如何方便地在Linux上查询硬件信息并生成报告
3个重启Linux系统的命令(以及4个安全实现的方式)
如何轻松地在命令行上同时移动多种类型的文件?
GameHub:将所有的游戏统一到一个屋檐(平台)下
您可能想知道的'top'命令行实用程序的一些替代方案
如何实现更改Linux终端字体的种类和大小
喜欢使用Linux办公、学习、hack的朋友们可以点击关注小编,小编将竭力提供更多内容给大家交流~