linux入门第五章,mkdir、touch详解

讲课之前先交给大家一个口令:tm文件文件夹

小伙伴一脸懵,说老师怎么还骂人呢?这个不是骂人,是用来区分mkdir和touch。是我自己编的哦!全网独创

tm文件文件夹,t对应着文件,m对应着文件夹

touch是创建文件的意思,mkdir是创建文件夹

mkdir

mkdir是用来创建文件夹的命令,比如我们想在桌面新建一个文件夹,文件夹的名字叫lin,语句为:

mkdir [-p] linux路径

-p可选,表示自动创建不存在的父目录

我们来演示一下:

咱们想在桌面创建但是打开命令符,你如果直接打开,当前的工作目录是~,我们先把它切换到桌面

因为我的系统还没有装中文输入法,通过ls可以看到家目录下有"桌面",kali Linux粘贴和Windows不太一样,他们多加了一个shift

我们用ctrl+shift+c复制一下"桌面"那两个字,之后用ctrl+shift+v粘贴

再用cd切换到桌面,这样就OK了

mkdir lin

这样你就在桌面创建好了一个名叫lin的文件夹

那么新的任务来了,我们想在这个lin文件夹里创建一个jiang的文件夹,再在里面创建一个ze,再在ze里创建yue,也就是

~/桌面/lin/jiang/ze/yue

这样可以创建成功吗?我们来试一下

因为我们当前工作目录就是桌面,所以只用写lin/jiang/ze/yue就可以了

如果你直接写mkdir lin/jiang/ze/yue,他就会说"无法创建目录 "lin/jiang/ze/yue": 没有那个文件或目录"因为普通的mkdir只能在现有的目录里创建文件夹

我们之前在桌面创建了一个lin,是有这个叫lin的文件夹的,但是lin是空的,里面并没有jiang,所以在jiang里创建ze就会报错

但是你加上-p就可以创建了。-p的作用:自动创建不存在的父目录

这时候就会有小伙伴想,我可以在根目录那里创建一个自己的文件夹吗?答案是------------

当然不可以了

为什么不可以呢?因为你的权限是普通用户,你没有管理员权限,普通用户的权限只有家目录下边可以操作,就是/home/lin里,也就是漂浮号~里

有的小伙伴可能会抬杠,说桌面里面也可以创建文件夹啊,咱就是说,别忘了桌面也在lin里......

我们来在根目录创建一个叫lin的文件夹

不出意外,他说无法创建目录。权限不够

至于怎么样才能拿更高的权限呢?别着急,我们会讲到的

touch命令

先切换到桌面的路径,一会在桌面演示

创建文件,语法是:

touch linux路径

没错,他只有这两句,没有选项

比如我们在桌面创建一个名为qqq1的文件,那么就写为touch qqq1

诶,灵机一动,我用touch创建qqq1的文件,再用mkdir创建qqq1的文件夹,会发生什么呢?我们来试一下

诶?这是为什么?为什么显示"无法创建目录 "qqq1": 文件已存在"呢?这里根本没有叫qqq1的文件夹呀?

答案是:在Linux系统中,文件和文件夹不可以同名,这样会导致冲突,它不像Windows系统上那样同名没什么反应,在Linux系统上,这样是不被允许的

此时又一个小伙伴灵机一动,说我可以像mkdir那样创建多重目录,之后再创建文件吗?当然也是------不可以了

还记得我们开头说过的,他没有选项吗?mkdir有个创建父目录的选项-p,他可以创建多级目录,但是touch没有,这是为什么呢?

touch的设计初衷是操作已存在的路径进行创建文件,并不是修改目录结构,所以我们得先用mkdir把目录整出来,才能创建文件

这一章节就到这里

小结

在kali中,复制粘贴是ctrl+shift+c和ctrl+shift+v

普通用户的权限只有在家目录里操作

在Linux系统中,文件和文件夹不可以同名,这样会导致冲突

mkdir用以创建新的目录(也就是文件夹)

语法:mkdir [-p] linux路径

命令 选项 参数

参数必填,表示要创建的路径,相对路径,绝对路径,特殊路径符都可以使用

-p可选,表示自动创建不存在的父目录,适用于创建连续多层级的目录

tm文件文件夹

tm文件文件夹,t对应着文件,m对应着文件夹

touch是创建文件的意思,mkdir是创建文件夹

touch的设计初衷是操作已存在的路径进行创建文件,并不是修改目录结构,所以我们得先用mkdir把目录整出来,才能创建文件

相关推荐
木子欢儿2 小时前
在 Debian 13(以及 12)上安装和配置 tightvncserver 并让普通用户使
运维·前端·debian
ol木子李lo2 小时前
Linux 命令备忘录
linux·运维·服务器·windows·编辑器·ssh·bash
SakitamaX2 小时前
Nginx安装与实验
服务器·前端·nginx
2501_918126912 小时前
stm32能刷什么程序?
linux·stm32·单片机·嵌入式硬件·学习
第七序章2 小时前
【Linux学习笔记】git三板斧
linux·运维·服务器·笔记·git·学习
礼拜天没时间.2 小时前
Node.js运维部署实战:从0到1开始搭建Node.js运行环境
linux·运维·后端·centos·node.js·sre
一只自律的鸡2 小时前
【Linux系统编程】文件IO 标准IO
linux·运维·服务器
郝学胜-神的一滴2 小时前
Python中的del语句与垃圾回收机制深度解析
服务器·开发语言·网络·python·算法
EverydayJoy^v^2 小时前
Linux Shell 高级编程(2)——sed
linux·运维·服务器