Linux mktemp 命令使用方法

Linux mktemp命令用于建立暂存文件。mktemp建立的一个暂存文件,供shell script使用。

创建临时文件或者目录,这样的创建方式是安全的。此命令的适用范围:RedHat、RHEL、Ubuntu、CentOS、SUSE、openSUSE、Fedora。

语法

mktemp [-dqu][文件名参数]

参数

  • -d用于创建目录,而不是文件
  • -q 执行时若发生错误,不会显示任何信息。
  • -u 暂存文件会在mktemp结束前先行删除。(不创建任何东西,仅仅显示文件名)
  • [文件名参数] 文件名参数必须是以”自订名称.XXXXXX”的格式。(至少三个X,且必须是大写的X)

实例

使用mktemp 命令生成临时文件时,文件名参数应当以”文件名.XXXX”的形式给出,mktemp 会根据文件名参数建立一个临时文件。在命令行提示符输入如下命令:

1)至少三个X,且必须是大写X

[root@benderfly test]# ls
[root@benderfly test]# mktemp benderfly.xxx  #小写x提示错误
mktemp: too few X's in template `benderfly.xxx'

[root@benderfly test]# mktemp benderfly.XX    #少于三个X
mktemp: too few X's in template `benderfly.XX

[root@benderfly test]# mktemp benderfly.XXX    #三个X,创建成功
benderfly.NHa

2)创建临时文件

[root@benderfly test]# ls

[root@benderfly test]# mktemp benderfly.XXXX   #包含4个X  
benderfly.G5Xu

[root@benderfly test]# mktemp -d benderfly.XXXXXX #包含6个X
benderfly.mp6dx5

[root@benderfly test]# ll
total 4
-rw------- 1 root root    0 Nov  6 16:46 benderfly.G5Xu
drwx------ 2 root root 4096 Nov  6 16:46 benderfly.mp6dx5

[root@benderfly test]# mktemp -d benderfly.XXXXXX   
benderfly.jT0OHY

[root@benderfly test]# ll
total 8
-rw------- 1 root root    0 Nov  6 16:46 benderfly.G5Xu
drwx------ 2 root root 4096 Nov  6 16:46 benderfly.jT0OHY
drwx------ 2 root root 4096 Nov  6 16:46 benderfly.mp6d

3)创建临时目录

[root@benderfly test]# mktemp -d benderfly.XXXXXX   
benderfly.jT0OHY

[root@benderfly test]# ll
total 8
-rw------- 1 root root    0 Nov  6 16:46 benderfly.G5Xu
drwx------ 2 root root 4096 Nov  6 16:46 benderfly.jT0OHY
drwx------ 2 root root 4096 Nov  6 16:46 benderfly.mp6dx5

4)在/tmp中创建临时文件

[root@benderfly test]# ll /tmp|grep benderfly

[root@benderfly test]# mktemp --tmpdir benderfly.XXX
/tmp/benderfly.xvg

[root@benderfly test]# mktemp --tmpdir -d benderfly.XXX
/tmp/benderfly.gsD

[root@benderfly test]# ls -l  /tmp|grep benderfly
drwx------ 2 root  root     4096 Nov  6 17:00 benderfly.gsD
-rw------- 1 root  root        0 Nov  6 17:00 benderfly.xvg

4)使用选项-u创建

[root@benderfly test]# mktemp -u new.XXX   #不创建任何东西,仅仅显示文件名
new.Xan
[root@benderfly test]# ls

「点点赞赏,手留余香」

    还没有人赞赏,快来当第一个赞赏的人吧!
0 条回复 A 作者 M 管理员
    所有的伟大,都源于一个勇敢的开始!
欢迎您,新朋友,感谢参与互动!欢迎您 {{author}},您在本站有{{commentsCount}}条评论