前言

大家好,我是god23bin。欢迎来到《一分钟学一个 Linux 命令》系列,今天需要你花两分钟时间来学习下,因为今天要讲的是两个命令,mkdirtouch 命令。前一个命令是操作目录的,后一个命令是操作文件的。

建议学完手敲一篇加深记忆噢!

mkdir

什么是 mkdir 命令?

mkdirmake directory 的缩写,顾名思义,创建目录(文件夹)。无论是在日常工作还是在编写脚本时,创建新的目录都是一项基础而重要的操作。mkdir 命令允许我们在任意位置创建新的目录。

如何使用 mkdir 命令?

使用 mkdir 命令非常简单,只需要在终端输入 mkdir,后面紧跟要创建的目录的名称就可以创建一个目录了。执行该命令后,系统会在当前工作目录下创建一个新的目录。

基本语法:mkdir 目录名

以下是一个示例:

mkdir gta6

执行上述命令后,系统将在当前工作目录下创建一个名为 gta6 的新目录。

举例说明

让我们通过一些具体示例来更好地理解 mkdir 命令的使用。

  1. 创建多个目录:
mkdir dir1 dir2 dir3

执行上述命令后,将在当前目录下创建三个目录,分别为dir1dir2dir3

常用选项参数

-p:递归创建目录,如果父目录不存在则一并创建。

-m:创建目录的同时设置权限。

例子

  1. 递归创建目录,即创建多级目录,不存在的目录也会一并创建。

假设当前所在目录是 /opt/games,则我们为 gta6 目录创建一个多级的子目录:

mkdir -p gta6/model/objs

使用-p选项参数,mkdir命令可以创建多级目录。上述命令将在/home/user/documents/linux路径下创建一个名为commands的新目录。如果路径中的某个目录不存在,系统会自动创建相应的目录。

  1. 创建具有特定权限的目录:
mkdir -m 700 importance

使用-m选项参数,我们可以为新创建的目录指定特定的权限。上述命令将在当前工作目录下创建一个名为public的新目录,并将其权限设置为755

touch

什么是 touch 命令?

touch 命令是一个简单而实用的命令,通过 touch 命令,我们可以创建一个新的空文件,或者修改现有文件的访问时间、修改时间或创建时间。

可能有的人会注意到,touch 不是触碰的意思吗?为什么会是创建一个新的文件呢?创建不应该是 create 吗?或者为什么不是 make file 这样类似 make directory 呢?

我也是有这个疑惑的,综合网上的说法,结论大致是这样的:

为什么linux 创建文件是touch 而不是create - 思否

如何使用 touch 命令?

使用起来也是很简单,基本语法如下:

touch 文件名

执行该命令后,系统会在当前工作目录下创建一个空的文件了。

举例说明

让我们通过一些示例来更好地理解 touch 命令的使用。

  1. 创建多个文件:
touch f1.txt f2.txt f3.txt

  1. 修改文件的时间戳:
touch -c f1.txt

执行上述命令后,将修改 file.txt 文件的访问时间和修改时间为当前时间。如果文件不存在,则不创建新文件。

我们可以通过 stat 文件名.文件类型 查看一个文件的创建时间、访问时间、修改时间:

stat f1.txt

输出:

  File: ‘f1.txt’
Size: 0 Blocks: 0 IO Block: 4096 regular empty file
Device: 803h/2051d Inode: 103291361 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Context: unconfined_u:object_r:usr_t:s0
Access: 2023-06-05 00:01:37.087062955 +0800
Modify: 2023-06-05 00:01:37.087062955 +0800
Change: 2023-06-05 00:01:37.087062955 +0800
Birth: -

Access 表示访问时间,Modify 表示修改时间,Change 表示状态改动时间(简单理解,就是文件发生改变时的时间)

关于 Linux 下文件的时间,可以看这里:Linux下文件的三种时间标记:访问时间、修改时间、状态改动时间

常用选项参数

touch 命令还提供了一些常用的选项参数,用于进一步控制其行为。以下是一些常用选项参数及其示例:

  • -a:仅修改文件的访问时间,由于修改了文件的访问时间,所以状态改动时间也会跟着更新。

    touch -a f1.txt

  • -m:仅修改文件的修改时间,同理,状态改动时间也会跟着更新。

    touch -m f1.txt

  • -r:根据参考文件的时间戳修改文件的时间戳。

    touch -r reference.txt file.txt

总结

通过本文的介绍,我们学习了 mkdir 命令和 touch 命令在 Linux 中的作用和使用方法。

mkdir 命令允许我们快速创建新的目录,方便组织和管理文件。我们学会了基本的使用方法,包括在当前工作目录下创建目录、创建多级目录(即使不存在也创建)和设置权限并创建目录。

touch 命令用于创建空文件或修改文件的时间戳,是一个非常实用的命令。还有我们可以通过 stat 文件名.文件类型 来查看一个文件的时间戳。

现在,相信你聪明的你已经学会了!希望本文能够帮助大家更好地理解和应用 mkdirtouch 命令。如果你对其他 Linux 命令也感兴趣,敬请期待我后续的文章。谢谢大家的阅读!

最后的最后

希望各位屏幕前的靓仔靓女们给个三连!你轻轻地点了个赞,那将在我的心里世界增添一颗明亮而耀眼的星!

咱们下期再见!

一分钟学一个 Linux 命令 - mkdir 和 touch的更多相关文章

  1. 一天学一个Linux命令:第一天 ls

    文章更新于:2020-03-02 注:本文参照 man ls 手册,并给出使用样例. 文章目录 一.命令之`ls` 1.名字及介绍 2.语法格式 3.输出内容示例 4.参数 二.命令实践 1.`ls ...

  2. 一天学一个Linux命令:第二天 cd pwd

    文章更新于:2020-03-08 注:本文参照 man pwd 手册,并给出使用样例. 文章目录 一.命令之 `cd` 和 `pwd` 1.命令介绍 2.语法格式 3.使用样例 4.pwd 参数 5. ...

  3. 【转载】每天一个Linux命令

    目  录 每天一个linux命令(1)  : ls 命令 每天一个linux命令(2)  : cd 命令 每天一个linux命令(3)  : pwd 命令 每天一个linux命令(4)  : mkdi ...

  4. 每天一个linux命令(5):mkdir命令

    版权声明更新:2017-05-09博主:LuckyAlan联系:liuwenvip163@163.com声明:吃水不忘挖井人,转载请注明出处! 1 文章介绍 本文介绍了Linux下命令mkdir. 2 ...

  5. 每天一个Linux命令:mkdir(4)

    mkdir mkdir命令 用来创建指定的名称的目录,要求创建目录的用户在当前目录中具有写权限,并且指定的目录名不能是当前目录中已有的目录 格式 mkdir [选项] [目录..] 参数选项 参数 备 ...

  6. 每天一个Linux命令(mkdir)

    每天一个Linux命令(mkdir) mkdir: /bin/mkdir,创建目录( make directories)语法:mkdir [选项]... 不存在的目录...目录:默认时必须该目录不存在 ...

  7. 每天一个 Linux 命令(21):find命令之xargs

    在使用 find命令的-exec选项处理匹配到的文件时, find命令将所有匹配到的文件一起传递给exec执行.但有些系统对能够传递给exec的命令长度有限制,这样在find命令运行几分钟之后,就会出 ...

  8. 每天一个linux命令目录

    出处:http://www.cnblogs.com/peida/archive/2012/12/05/2803591.html 开始详细系统的学习linux常用命令,坚持每天一个命令,所以这个系列为每 ...

  9. 每天一个linux命令-转载

    每天一个linux命令目录 转载自: http://www.cnblogs.com/peida/archive/2012/12/05/2803591.html   开始详细系统的学习linux常用命令 ...

  10. [转]每天一个linux命令目录

    [转]每天一个linux命令目录 http://www.cnblogs.com/peida/archive/2012/12/05/2803591.html 开始详细系统的学习linux常用命令,坚持每 ...

随机推荐

  1. Java面试——写一个生产者与消费者

    更多内容,前往个人博客 一.通过synchronize 中的 wait 和 notify 实现 [1]我们可以将生产者和消费者需要的方法写在公共类中 1 package com.yintong.con ...

  2. CSAPP-Data Lab

    gcc -O1 -Wall -m32 -lm -o btest bits.c btest.c decl.c tests.c In file included from btest.c:16:0: /u ...

  3. MapReduce之简单的数据清洗----课堂测试

    今天的课堂测试第一步是做简单的数据清洗,直到现在我才知道只是把文本文件的数据改成相应的格式,而我做的一直是寻找一条数据,并转换成相应的格式,但是呢,我感觉还是很高兴的,虽然没有按时完成任务,但也学到了 ...

  4. gulp基本操作

    1.安装淘宝镜像 npm install cnpm -g --registry=https://registry.npm.taobao.org cnpm -v 2.生成项目描述文件 package.j ...

  5. Kubernetes学习之旅

    # Kubernetes学习之旅 ## 引言 - 为什么选择Kubernetes- Kubernetes简介- Kubernetes的发展历程 ## Kubernetes基本概念 - 节点(Node) ...

  6. Exception-List

    一.500错误:找不到 jar包 应用根目录/WEB-INF/lib目录中没有对应的jar包. ctrl+shift+alt+s,打开artifacts,发现outputRoot里缺少lib目录.添加 ...

  7. YII2.0的文件上传, 并把文件名称重新编译

    /** *@Action 文件上传示例 *@这里我们演示的是一个YII2.0的文件上传, 并把文件名称重新编译 *@我们上传的是一个叫 photo 的jpg和png格式的文件 */ Controlle ...

  8. 基于Switching的 恒虚警率检测算法

    转发和使用请注明来源,以下为本人精心整理,还请尊重本人劳动成果与产权!由于本人现有知识和能力有限,如存在错误之处请指正!下面为正文内容: 1.S-CFAR检测算法(Switching,开关CFAR) ...

  9. vue3组合式API介绍

    为什么要使用Composition API? 根据官方的说法,vue3.0的变化包括性能上的改进.更小的 bundle 体积.对 TypeScript 更好的支持.用于处理大规模用例的全新 API,全 ...

  10. RTSP Server(LIVE555)源码分析(一)-重要关系类

    live项目包括四个基本的库,程序入口类(在mediaServer中),各种测试代码(测试代码在testProgs里面). 四个基本的库分别是: UsageEnvironment&TaskSc ...