linux(十一)文件和目录相关命令touch和mkdir

2023年 10月 11日 80.3k 0

前边看了ls,cd,pwd这三个纯用来操作目录的命令。

接下来,来看一下文件和目录都有的命令。

 

首先,分别是创建文件命令touch,以及创建目录命令mkdir

 

一:touch命令

1:创建一个空文件

[root@iZuf60ynur81p6k0ysvtneZ opt]# touch ceshi.txt
[root@iZuf60ynur81p6k0ysvtneZ opt]# ll -a
total 8
drwxr-xr-x.  2 root root 4096 Aug 27 09:20 .
dr-xr-xr-x. 18 root root 4096 Aug 10 19:00 ..
-rw-r--r--   1 root root    0 Aug 27 09:20 ceshi.txt
[root@iZuf60ynur81p6k0ysvtneZ opt]#

 

2:使用touch命令一次创建多个文件

[root@iZuf60ynur81p6k0ysvtneZ opt]# touch ceshi1.txt ceshi2.txt ceshi3.txt
[root@iZuf60ynur81p6k0ysvtneZ opt]# ll -a
total 8
drwxr-xr-x.  2 root root 4096 Aug 27 09:22 .
dr-xr-xr-x. 18 root root 4096 Aug 10 19:00 ..
-rw-r--r--   1 root root    0 Aug 27 09:22 ceshi1.txt
-rw-r--r--   1 root root    0 Aug 27 09:22 ceshi2.txt
-rw-r--r--   1 root root    0 Aug 27 09:22 ceshi3.txt
-rw-r--r--   1 root root    0 Aug 27 09:20 ceshi.txt

 

3:强制避免使用touch命令创建新文件

有时,如果新文件不存在,则需要避免创建新文件。 在这种情况下,您可以使用touch命令使用'-c'选项,

[root@iZuf60ynur81p6k0ysvtneZ opt]# touch -c test.h
[root@iZuf60ynur81p6k0ysvtneZ opt]# ll -a
total 8
drwxr-xr-x.  2 root root 4096 Aug 27 09:22 .
dr-xr-xr-x. 18 root root 4096 Aug 10 19:00 ..
-rw-r--r--   1 root root    0 Aug 27 09:22 ceshi1.txt
-rw-r--r--   1 root root    0 Aug 27 09:22 ceshi2.txt
-rw-r--r--   1 root root    0 Aug 27 09:22 ceshi3.txt
-rw-r--r--   1 root root    0 Aug 27 09:20 ceshi.txt

 

这个命令具体在哪各场景应用,我也是没搞清楚希望有大神看到了,能给我解释一下

 

4:同时修改文件访问时间及修改时间

[root@iZuf60ynur81p6k0ysvtneZ opt]# touch ceshi.txt
[root@iZuf60ynur81p6k0ysvtneZ opt]# stat ceshi.txt
  File: ‘ceshi.txt’
  Size: 0               Blocks: 0          IO Block: 4096   regular empty file
Device: fd01h/64769d   Inode: 1179659     Links: 1
Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2020-08-27 10:27:46.209966525 +0800
Modify: 2020-08-27 10:27:46.209966525 +0800
Change: 2020-08-27 10:27:46.209966525 +0800
 Birth: -

 

结合上边的代码,我们可以看到文件的访问和修改时间都改成了10:27:46

 

5:单独更改访问时间/单独更改修改时间

(1):修改访问时间,使用-a

[root@iZuf60ynur81p6k0ysvtneZ opt]# touch -a ceshi.txt
[root@iZuf60ynur81p6k0ysvtneZ opt]# stat ceshi.txt
  File: ‘ceshi.txt’
  Size: 0               Blocks: 0          IO Block: 4096   regular empty file
Device: fd01h/64769d   Inode: 1179659     Links: 1
Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2020-08-27 10:30:06.105001882 +0800
Modify: 2020-08-27 10:27:46.209966525 +0800
Change: 2020-08-27 10:30:06.105001882 +0800
 Birth: -

我们看到,修改版时间发生了改变

 

(2):更改修改时间,使用-m

[root@iZuf60ynur81p6k0ysvtneZ opt]# touch -m ceshi.txt
[root@iZuf60ynur81p6k0ysvtneZ opt]# stat ceshi.txt
  File: ‘ceshi.txt’
  Size: 0               Blocks: 0          IO Block: 4096   regular empty file
Device: fd01h/64769d   Inode: 1179659     Links: 1
Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2020-08-27 10:30:06.105001882 +0800
Modify: 2020-08-27 10:31:06.882886472 +0800
Change: 2020-08-27 10:31:06.882886472 +0800
 Birth: -

 

6:将访问和修改时间从一个文件复制到另一个文件

我们将ceshi1.txt文件的修改访问时间,复制到ceshi.txt上,使用-r参数

[root@iZuf60ynur81p6k0ysvtneZ opt]# touch ceshi.txt -r ceshi1.txt
[root@iZuf60ynur81p6k0ysvtneZ opt]# stat ceshi1.txt
  File: ‘ceshi1.txt’
  Size: 0               Blocks: 0          IO Block: 4096   regular empty file
Device: fd01h/64769d   Inode: 1179660     Links: 1
Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2020-08-27 09:22:12.361072160 +0800
Modify: 2020-08-27 09:22:12.361072160 +0800
Change: 2020-08-27 09:22:12.361072160 +0800
 Birth: -

 

7:使用指定时间戳创建文件

语法:touch -t YYMMDDHHMM.SS “filename”

[root@iZuf60ynur81p6k0ysvtneZ opt]# touch -t 2006151230.30 linuxidc
[root@iZuf60ynur81p6k0ysvtneZ opt]# stat linuxidc
  File: ‘linuxidc’
  Size: 0               Blocks: 0          IO Block: 4096   regular empty file
Device: fd01h/64769d   Inode: 1179663     Links: 1
Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2020-06-15 12:30:30.000000000 +0800
Modify: 2020-06-15 12:30:30.000000000 +0800
Change: 2020-08-27 10:43:34.588771917 +0800
 Birth: -

 

8:将文件的时间戳更改为其他时间

语法:touch -c -t YYMMDDHHMM.SS “filename”

[root@iZuf60ynur81p6k0ysvtneZ opt]# touch -c -t 2008191130.30 linuxidc
[root@iZuf60ynur81p6k0ysvtneZ opt]# stat linuxidc
  File: ‘linuxidc’
  Size: 0               Blocks: 0          IO Block: 4096   regular empty file
Device: fd01h/64769d   Inode: 1179663     Links: 1
Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2020-08-19 11:30:30.000000000 +0800
Modify: 2020-08-19 11:30:30.000000000 +0800
Change: 2020-08-27 10:44:57.244973180 +0800
 Birth: -

 

二:创建目录mkdir

1:创建一个空目录

[root@iZuf60ynur81p6k0ysvtneZ opt]# mkdir first
[root@iZuf60ynur81p6k0ysvtneZ opt]# ll -a
total 12
drwxr-xr-x.  3 root root 4096 Aug 27 10:47 .
dr-xr-xr-x. 18 root root 4096 Aug 10 19:00 ..
-rw-r--r--   1 root root    0 Aug 27 09:22 ceshi1.txt
-rw-r--r--   1 root root    0 Aug 27 09:22 ceshi2.txt
-rw-r--r--   1 root root    0 Aug 27 09:22 ceshi3.txt
-rw-r--r--   1 root root    0 Aug 27 09:22 ceshi.txt
drwxr-xr-x   2 root root 4096 Aug 27 10:47 first
-rw-r--r--   1 root root    0 Aug 19 11:30 linuxidc

 

2:同时创建多个目录

[root@iZuf60ynur81p6k0ysvtneZ opt]# mkdir second third
[root@iZuf60ynur81p6k0ysvtneZ opt]# ll -a
total 20
drwxr-xr-x.  5 root root 4096 Aug 27 10:48 .
dr-xr-xr-x. 18 root root 4096 Aug 10 19:00 ..
-rw-r--r--   1 root root    0 Aug 27 09:22 ceshi1.txt
-rw-r--r--   1 root root    0 Aug 27 09:22 ceshi2.txt
-rw-r--r--   1 root root    0 Aug 27 09:22 ceshi3.txt
-rw-r--r--   1 root root    0 Aug 27 09:22 ceshi.txt
drwxr-xr-x   2 root root 4096 Aug 27 10:47 first
-rw-r--r--   1 root root    0 Aug 19 11:30 linuxidc
drwxr-xr-x   2 root root 4096 Aug 27 10:48 second
drwxr-xr-x   2 root root 4096 Aug 27 10:48 third

 

3:创建目录的时候,同时指定权限

语法:mkdir -m 755 xxx

[root@iZuf60ynur81p6k0ysvtneZ opt]# mkdir -m 700 auth
[root@iZuf60ynur81p6k0ysvtneZ opt]# ll -a
total 24
drwxr-xr-x.  6 root root 4096 Aug 27 10:49 .
dr-xr-xr-x. 18 root root 4096 Aug 10 19:00 ..
drwx------   2 root root 4096 Aug 27 10:49 auth
-rw-r--r--   1 root root    0 Aug 27 09:22 ceshi1.txt
-rw-r--r--   1 root root    0 Aug 27 09:22 ceshi2.txt
-rw-r--r--   1 root root    0 Aug 27 09:22 ceshi3.txt
-rw-r--r--   1 root root    0 Aug 27 09:22 ceshi.txt
drwxr-xr-x   2 root root 4096 Aug 27 10:47 first
-rw-r--r--   1 root root    0 Aug 19 11:30 linuxidc
drwxr-xr-x   2 root root 4096 Aug 27 10:48 second
drwxr-xr-x   2 root root 4096 Aug 27 10:48 third

 

注意auth目录的权限

 

4:递归创建目录

语法:mkdir -p xxx/xxx/xxx

[root@iZuf60ynur81p6k0ysvtneZ opt]# mkdir -p a/b/c
[root@iZuf60ynur81p6k0ysvtneZ opt]# ll -a
total 28
drwxr-xr-x.  7 root root 4096 Aug 27 10:51 .
dr-xr-xr-x. 18 root root 4096 Aug 10 19:00 ..
drwxr-xr-x   3 root root 4096 Aug 27 10:51 a
drwx------   2 root root 4096 Aug 27 10:49 auth
-rw-r--r--   1 root root    0 Aug 27 09:22 ceshi1.txt
-rw-r--r--   1 root root    0 Aug 27 09:22 ceshi2.txt
-rw-r--r--   1 root root    0 Aug 27 09:22 ceshi3.txt
-rw-r--r--   1 root root    0 Aug 27 09:22 ceshi.txt
drwxr-xr-x   2 root root 4096 Aug 27 10:47 first
-rw-r--r--   1 root root    0 Aug 19 11:30 linuxidc
drwxr-xr-x   2 root root 4096 Aug 27 10:48 second
drwxr-xr-x   2 root root 4096 Aug 27 10:48 third

 

5:rmdir 删除目录

正经的,这个命令我是第一次见,之前删除统一都是直接使用rm

Rmdir的用法与mkdir用法相同,这里不再赘述。

 

以上大概就是touch和mkdir命令的相关内容。

 

有好的建议,请在下方输入你的评论。

相关文章

服务器端口转发,带你了解服务器端口转发
服务器开放端口,服务器开放端口的步骤
产品推荐:7月受欢迎AI容器镜像来了,有Qwen系列大模型镜像
如何使用 WinGet 下载 Microsoft Store 应用
百度搜索:蓝易云 – 熟悉ubuntu apt-get命令详解
百度搜索:蓝易云 – 域名解析成功但ping不通解决方案

发布评论