一分钟学一个 Linux 命令 - mkdir 和 touch

news2024/10/5 13:05:10

前言

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

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

mkdir

什么是 mkdir 命令?

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

如何使用 mkdir 命令?

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

基本语法:mkdir 目录名

以下是一个示例:

mkdir gta6

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

image-20230604233337726

举例说明

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

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

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

image-20230604233805532

常用选项参数

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

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

例子

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

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

mkdir -p gta6/model/objs

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

image-20230604234411712

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

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

image-20230604234923473

touch

什么是 touch 命令?

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

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

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

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

image-20230605003912359

如何使用 touch 命令?

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

touch 文件名

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

image-20230604235539025

举例说明

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

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

image-20230605000037672

  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 表示状态改动时间(简单理解,就是文件发生改变时的时间)

image-20230605001058851

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

常用选项参数

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

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

    touch -a f1.txt
    

image-20230605001541851

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

    touch -m f1.txt
    

image-20230605001902786

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

    touch -r reference.txt file.txt
    

image-20230605002203192

总结

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

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

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

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

最后的最后

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

咱们下期再见!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/613095.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

蓝桥杯STC15F2K60S2单片机 CCP/PCA/PWM模块的学习与使用

有道是“一花独放不是春,万紫千红春满园” 我们不能只满足于 眼前所谓的 “够用、能用” 的少量知识,而不去深入学习探究,进而不慎封锁了自己的见识 和 更多 创新开发上的可能性。 曾经仅满足于学习了蓝桥杯单片机的三个外部晶振 定时器&am…

日撸java三百行day58-59

文章目录 说明Day58 符号型数据的 NB 算法1.基础理论知识1.1 条件概率1.2 独立性假设1.3 Laplacian 平滑 2. 符号型数据的预测算法跟踪2.1 testNominal()方法2.1.1 NaiveBayes 构造函数2.1.2 calculateClassDistribution()2.1.3 calculateConditionalProbabilities()方法2.1.4 …

D*算法详解 (D星算法 / Dynamic A*算法/ Dstar算法)(死循环解决)【编辑中】

所需先验知识(没有先验知识可能会有大碍,了解的话会对D*的理解有帮助):A*算法/ Dijkstra算法 何为D*算法 Dijkstra算法是无启发的寻找图中两节点的最短连接路径的算法,A*算法则是在Dijkstra算法的基础上加入了启发函数…

【linux下一次复制cp多个文件】

linux下一次复制cp多个文件 linux cp 参数说明 -a:此选项通常在复制目录时使用,它保留链接、文件属性,并复制目录下的所有内容。其作用等于dpR参数组合。 -d:复制时保留链接。这里所说的链接相当于Windows系统中的快捷方式。 -f&…

使用可上网的服务器作为网关,实现另一台服务器上网

文章目录 物理条件方法一:不使用交换机方法二:使用交换机 配置步骤查看网络状态设置静态IP将服务器A设置成网关重新启动各服务器网卡设置主机名 参考资料 本文的目标是利用一台可以上网的服务器作为网关,使在同一局域网中的所有服务器都可以上…

如何安装多个node版本(不使用nvm)

1、选择node安装的路径 例如:D:\Program Files\nodejs 2、下载要安装的对应版本的zip格式的node安装包 例如:下载16.14.2 和 13.14.0 两个版本的zip格式的node安装包,node版本下载地址https://nodejs.org/dist/ 3、安装包解压到对应文件夹…

遥感云大数据在灾害、水体与湿地领域典型

近年来遥感技术得到了突飞猛进的发展,航天、航空、临近空间等多遥感平台不断增加,数据的空间、时间、光谱分辨率不断提高,数据量猛增,遥感数据已经越来越具有大数据特征。遥感大数据的出现为相关研究提供了前所未有的机遇&#xf…

路径规划算法:基于JAYA优化的路径规划算法- 附代码

路径规划算法:基于JAYA优化的路径规划算法- 附代码 文章目录 路径规划算法:基于JAYA优化的路径规划算法- 附代码1.算法原理1.1 环境设定1.2 约束条件1.3 适应度函数 2.算法结果3.MATLAB代码4.参考文献 摘要:本文主要介绍利用智能优化算法JAYA…

深入理解深度学习——正则化(Regularization):对抗训练(Adversarial Training)

分类目录:《自然语言处理从入门到应用》总目录 在许多情况下,神经网络在独立同分布的测试集上进行评估已经达到了人类表现。因此,我们自然要怀疑这些模型在这些任务上是否获得了真正的人类层次的理解。为了探索网络对底层任务的理解层次&…

如何理解并使用 park 与 unpark

tip: 作为程序员一定学习编程之道,一定要对代码的编写有追求,不能实现就完事了。我们应该让自己写的代码更加优雅,即使这会费时费力。 文章目录 一、基本介绍二、使用例子三、使用注意事项 一、基本介绍 park和unpark是Java中的两个线程同步…

高性能软件负载OpenResty介绍和安装

目录 1 OpenResty介绍1.1 Nginx 的流程定义1.1.1 流程详解1.1.2 OpenResty处理流程 2 Openresty安装2.1 yum安装2.1.1 添加OpenResty仓库2.1.2 安装OpenResty 2.2 源代码编译安装2.2.1 安装编译环境2.2.2下载最新版源码2.2.3下载缓存插件2.2.4 编译OpenResty2.2.5 安装OpenRest…

《设计模式》之状态模式

文章目录 1、定义2、动机3、类结构4、优点5、总结6、代码实现(C) 1、定义 允许一个对象在其内部改变时改变它的行为,从而使对象看起来改变了其行为。 2、动机 某些对象的状态如果改变,其行为也会随之而发生改变。比如文档的只读状态和读写状态的行为可…

【MySQL】- 04 MVCC实现原理

MVCC的实现原理 隐式字段undo日志Read View(读视图)整体流程例子 MVCC的目的就是多版本并发控制,在数据库中的实现,就是为了解决读写冲突,它的实现原理主要是依赖记录中的 3个隐式字段,undo日志 ,Read View 来实现的。…

Linux笔记-so.1和so的区别(三方程序链接Qt的so.1和so)

如下面这个程序使用ldd查看下: 从中可以看到一些so.6和so.1这些,这些其实是版本号,比如这个:/lib64/libstdc.so.6 可见so.版本号其实是个软连接,最终会连接到/lib64/libstdc.so.6.0.19 而CQt框架写的lib如下pro文件会生…

磁盘配额与进阶文件系统管理(一)

磁盘配额Quota 用途 针对www server,例如 每个人网页空间的容量限制;针对mail server,例如 每个人的邮件空间限制;针对file server,例如 每个人最大可用的网络硬盘空间;限制某一群组所能使用的最大磁盘空…

使用zerotier进行内网穿透,外网访问其它电脑上的虚拟机

目标 使用一台电脑,使用vmware创建三台虚拟机,处于同一网段。另一台电脑外网进行访问其虚拟机 用途 学习K8s集群,由于个人财力有限,云服务器买不了几台,而且不同厂家的云服务器无法做到内网互通 完成后缺陷 使用z…

nginx系统优化和内核优化

nginx系统优化 一:隐藏nginx版本号 方法一:修改配置文件 vim /usr/local/nginx/conf/nginx.confnginx -t systemctl restart nginx curl -I http://192.168.52.108方法二:修改源代码 vim /opt/nginx-1.24.0/src/core/nginx.h ##配置文件里…

逆向汇编与反汇编——汇编基础快速入门

一、常用32位寄存器介绍 不同位数的寄存器的名称: eax:累加寄存器。通常用于算数运算,将结果保留在eax当中,当然也可以用于其他用途,比如一般把返回值通过eax传递出去。 ebx:基址寄存器 。有点类似于ebp…

Go语言日志库logrus

Go语言日志库logrus 1、介绍 logrus logrus是目前Github上star数量最多的日志包,功能强大、性能高效、高度灵活,还提供了自定义插件的功能。很 多优秀的开源项目,例如:docker、prometheus等都使用了logrus。logrus除了具有日志…

VMware nat模式配置

使用nat模式,需要配置ip才能做到虚拟机与主机、外网正常通信 步骤 1 选择虚拟机设置,将网络连接改为nat模式 2 查看主机vmware network adpter vmnet8 打开控制面板。选择网络连接,右击vmnet8,打开属性 选择ip4,双击…