前言

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

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

mkdir

什么是 mkdir 命令?

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

如何使用 mkdir 命令?

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

基本语法:mkdir 目录名

以下是一个示例:

mkdir gta6

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

举例说明

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

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

执行上述命令后,将在当前目录下创建三个目录,分别为dir1、dir2和dir3。

常用选项参数

-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 文件名.文件类型 来查看一个文件的时间戳。

现在,相信你聪明的你已经学会了!希望本文能够帮助大家更好地理解和应用 mkdir 和 touch 命令。如果你对其他 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. SpringBoot打包成exe(别再用exe4j了,使用JDK自带工具)

    SpringBoot打包成exe(别再用exe4j了,使用JDK自带工具) 搜到大部分打包exe的文章都是使用exe4j打包 步骤贼多,安装麻烦,打包麻烦 收费软件,公司使用会吃律师函 JDK14以上 ...

  2. 图与网络分析—R实现(一)

    图与网络 一个网络G,也可以称为图(graph)或网络图,是一种包含了节点V(即网络参与者,也称顶点)与边E(即节点之间的连接关系)的数学结构,记作G={V,E}.可以使用一个矩阵来存放节点之间的连接 ...

  3. [Git]解决GIT冲突问题:git pull failed

    1 文由 花了很长时间一次性修改了项目的一大堆文件,准备最后git pull同步一下本地仓库代码,再一次性git commit,git push新代码的. but天不遂人愿,git pull时产生冲突 ...

  4. 在idea中将一个javase项目转成ee项目

    在idea中将java项目转成web项目 1.创建一个java项目,new一个directory名为web(与src同级) 2. 为web指定根目录:ctrl+shift+alt+s,在module中 ...

  5. py文件转换为so文件

    将py文件编译为so文件 利用上面代码生成so文件生成的文件不方便取放,名字也不一样 通过执行发现转换执行了下面三句 /usr/local/python3/bin/cython test.py gcc ...

  6. 新一代自动化测试神器Playwright

    转载请注明出处️ 作者:测试蔡坨坨 原文链接:caituotuo.top/4bedb73c.html 你好,我是测试蔡坨坨. 说到WebUI自动化测试,首当其冲的当属Selenium,在很长的一段时间 ...

  7. Go语言实现文件服务器

    主调函数,设置路由表 package main import ( "fmt" "net/http" "store/handler" ) fu ...

  8. Ffmpeg分布式视频转码问题总结

    本文主要聊一聊云原生时代分布式转码系统实施过程中碰到的一些问题. 聊问题之前简单介绍一下我们的分布式转码方案. 云原生分布式转码 在计算资源招之即来的云计算时代,正在重构着软件架构的方方面面. 对软件 ...

  9. IE盒模型和标准盒模型之间的差别

    1.W3C标准盒子模型 w3c盒子模型的范围包括margin.border.padding.content,并且content部分不包含其他部分 2.IE盒子模型 IE盒子模型的范围包括margin. ...

  10. Prism Sample 19-NavigationParticipation

    Navigation Participation,不知翻译方法,意思是对导航过程的参与,触发事件,类似离开导航目标和进入导航的回调 在VM中,增加一个接口 ,然后实现导航事件 public class ...