创建临时文件或者目录,这样的创建方式是安全的。此命令的适用范围:RedHat、RHEL、Ubuntu、CentOS、SUSE、openSUSE、Fedora。
1 、语法
mktemp [ 选项] [TEMPLATE]
2 、选项列表
选项 |
说明 |
--version |
显示命令版本信息 |
--help |
显示帮助信息 |
-d | --directory |
创建目录 |
-u | --dry-run |
不要创建任何东西,只要打印一个名字(不安全) |
-q | --quiet |
|
--suffix=SUFF |
附加SUFF到模板中。SUFF不能包含斜杠。如果模板不以X结尾,则使用此选项。 |
--tmpdir[=dir] |
指定临时文件的路径,如果tmpdir后面没有路径,那么使用变量$TMPDIR;如果这个变量也没指定,那么临时文件创建在/tmp目录下。使用此选项,模板不能是绝对名称。与“-t“不同,模板可能包含斜杠,但mktemp只创建最终组件 |
-p DIR |
使用DIR作为前缀 |
-t |
将模板解释为一个相对于目录$TMPDIR(如果设置)的单个文件名组件;否则通过-p指定的目录;或者使用/tmp(-t已经弃用) |
TEMPLATE |
3 、实例
1 )创建临时文件
[root@localhost weijie]# mktemp wj123.XXXX // 名字包含 4 个 X
wj123.kpET
You have new mail in /var/spool/mail/root
[root@localhost weijie]# mktemp wj123.XXXXXX // 名字包含 6 个 X
wj123.oH2o4P
[root@localhost weijie]# ls
1.c wj123.kpET wj123.oH2o4P
2 )创建临时目
[root@localhost weijie]# mktemp -d wjtp // 名字中没有 X
mktemp: 模板 "wjtp" 中 X 太少
[root@localhost weijie]# mktemp -d wjtpxxx // 名字中没有 X ,这里可以看到 X 必须是大写的
mktemp: 模板 "wjtpxxx" 中 X 太少
[root@localhost weijie]# mktemp -d wjtpXXX // 创建成功
wjtpflR
[root@localhost weijie]# ls -l
总用量 4
-rw-r--r-- 1 root root 0 9 月 7 09:11 1.c
-rw------- 1 root root 0 9 月 7 14:47 wj123.kpET
-rw------- 1 root root 0 9 月 7 14:47 wj123.oH2o4P
drwx------ 2 root root 4096 9 月 7 14:50 wjtpflR
3 )在/tmp中创建临时文件
[root@localhost weijie]# mktemp --tmpdir wj234.XXX //tmpdir 没有指定路径,在 tmp 下创建
/tmp/wj234.BNy
You have new mail in /var/spool/mail/root
4 )在指定目录下创建临时目录
[root@localhost weijie]# mktemp --tmpdir=/weijie wj234.XXX // 在 tmpdir 指定的路径下创建
/weijie/wj234.q1C
[root@localhost weijie]# ls
1.c wj123.kpET wj123.oH2o4P wj234.q1C wjtpflR
5 )使用选项-u创建
[root@localhost weijie]# mktemp -u wj123.XXXXXX // 使用 -u 选项
wj123.dsgiKl
[root@localhost weijie]# ls // 看不到临时文件,因为没有创建
1.c wj123.kpET wj123.oH2o4P wj234.q1C wjtpflR
6 )使用选项-du创建
[root@localhost weijie]# mktemp -ud // 使用 -ud 选项 打印临时目录
/tmp/tmp.rb7f2tpTEq
[root@localhost weijie]# ls // 看不到临时目录,因为没有创建
1.c wj123.kpET wj123.oH2o4P wj234.q1C wjtpflR
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。