mkdir
基本概述
mkdir命令来自英文词组”make directories“的缩写,其功能是用来创建目录文件。使用方法简单,但需要注意若要创建的目标目录已经存在,则会提示已存在而不继续创建,不覆盖已有文件。而目录不存在,但具有嵌套的依赖关系时,例如/Dir1/Dir2/Dir3/Dir4/Dir5,要想一次性创建则需要加入-p参数,进行递归操作。
语法格式
mkdir [参数] 目录名
常用参数
-m:创建目录的同时设置权限
-p:递归创建多级目录
-v:显示执行过程详细信息
-z:设置目录安全上下文
参考示例
1.建立一个目录文件
[root@linuxcool ~]# mkdir Dir1
2.创建一个目录文件并设置700权限,不让除所有主以外任何人读、写、执行它
[root@linuxcool ~]# mkdir -m 700 Dir2
3.一次性创建多个目录文件
[root@linuxcool ~]# mkdir Dir3 Dir4 Dir5
4.在系统根目录中,一次性创建多个有嵌套关系的目录文件
[root@linuxcool ~]# mkdir -p /Dir{01..10}/{www,bbs,blog}
[root@linuxcool ~]# tree /Dir..
[root@linuxcool ~]# ls -R /Dir..
touch
基本概述
touch命令的功能是用于创建空文件与修改时间戳。如果文件不存在,则会创建出一个空内容的文本文件;如果文件已经存在,则会对文件的Atime(访问时间)和Ctime(修改时间)进行修改操作,管理员可以完成此项工作,而普通用户只能管理主机的文件。
语法格式
touch [选项] 文件名…
常用参数
-a:设置文件的读取时间记录,仅更新Access time(同时更新Change为current time)
-c:--no-create不创建新文件
-d:设置时间与日期
-m:设置文件的修改时间记录,仅更新Modify time(同时更新Change为current time)
-t:设置文件的时间记录,格式与date命令相同,使用指定的时间更新时间戳(仅更改Access time 与 Modify time,Change time 更新为current time)
-r:--reference=文件 使用指定文件的时间属性替代当前文件时间
--help:显示帮助信息
--version:显示版本信息
注意事项
第一个创建普通文件,在linux下文件的后缀格式仅仅是一个名字而已,通过touch创建的都是普通文件;
第二个修改文件的时间,不存在的文件将会被创建为空文件,除非使用-c或-h选项,也可以将每个文件的访问时间和修改时间改为当前时间。
参考示例
创建文件
1.创建出一个指定名称的空文件
[root@linuxcool ~]# touch File.txt
2.结合通配符,创建出多个指定名称的空文件
[root@linuxcool ~]# touch File{1..5}.txt
三种时间戳
Unix / Linux 文件系统每个文件都有三种时间戳
访问数据 (-atime / 天,-amin / 分钟):用户最近一次访问数据(文件修改了,还未被读取过,则不变)
修改时间(-mtime / 天,-mmin / 分钟):文件最后一次修改时间(数据改动)
变化时间(-ctime / 天,-cmin / 分钟):文件数据元(例如权限等)最后一次修改间
注意事项
文件任何数据改变,change 变化,无论是元数据变动,或是对文件 mv, cp 等
文件内容被修改时,modify和change更新
当change 更新后,第一次访问该文件(cat,less等),access time 首次会更新,之后则不会
1.修改Modify time
[root@linuxcool ~]# touch -m time.txt
2.修改Modify Time,Access Time
[root@linuxcool ~]# touch -a time.txt
3.修改Access Time,修改为指定时间
[root@linuxcool ~]# touch -t 202110240606 yu.txt #touch -t 修改文件的时间,这个文件的时间就被修改为 2021-10-24 06:06
[root@linuxcool ~]# ls -l --full-time 进行查看详细时间
[root@linuxcool ~]# stat yu.txt
File: yu.txt
Size: 1256 Blocks: 8 IO Block: 4096 regular file
Device: fd00h/64768d Inode: 35319937 Links: 1
Access: (0600/-rw-------) Uid: ( 0/ root) Gid: ( 0/ root)
Context: system_u:object_r:admin_home_t:s0
Access: 2023-05-18 15:44:00.000000000 +0800
Modify: 2023-05-18 15:44:00.000000000 +0800
Change: 2023-05-06 15:43:47.843170709 +0800
4.修改为指定时间,不创建新文件
[root@linuxcool ~]# touch -c test.txt
5.修改指定文件的查看时间和修改时间
[root@linuxcool ~]# touch -d "2023-05-18 15:44" File.cfg