Linux基础命令之mktemp详解

(编辑:jimmy 日期: 2024/12/27 浏览:2)

mktemp

      创建临时文件或者目录,这样的创建方式是安全的。此命令的适用范围: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个字母X。如果没有指定,那么默认是tmp.XXXXXXXXXX

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

补充:linux 基础命令

一、基础命令

    1、ls:列出当前目录下的的文件或目录

    2、ls -a :列出当前目录下所有的文件和目录(包括隐藏文件)

    3、ls -l :显示文件的详细信息(长格式的信息查看),相当于 ll

       ls -hl:显示文件的详细信息和文件的大小
       ls -al:列出当前目录下所有的文件和目录的详细信息
       ls -dl:显示当前文件本身的详细信息

    4、cat 命令:查看文件信息(只能查看文件)

          [root@com ~]# cat /etc/passwd :查看所有的用户信息
          [root@com ~]# cat /etc/group  :查看所有的用户组信息

          注明:在Linux系统中每创建一个用户就会自动生成一个对应的用户组。

    5、cd命令:切换目录       

 [root@com ~]# cd /etc :切换到根目录下的etc目录
  pwd:显示当前文件的目录
  whoami:查看当前的用户
    [root@com etc]# whoami:查看当前用户是root用户
    root 

   6、/:表示用户的根目录

          家目录(宿主目录)

          1)管理员用户的家目录:

  [root@com ~]# pwd
    /root

          2)普通用户的家目录:         

[java17@com ~]$ pwd
    /home/java17

    7、切换用户命令:su - 用户名

       1)切换到普通用户

  [root@com ~]# su - java17
  [java17@com ~]$ pwd
  /home/java17

       2)切换到root管理员用户

 [java17@com ~]$ su - 或
  [java17@com ~]$ su - root
  Password: 

    8、关机、重启、清屏

        关机:halt、init 0、shutdown now
        重启:reboot、init6
        清屏:clear、Ctrl+l       

总结

以上所述是小编给大家介绍的Linux基础命令之mktemp详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!