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 小时前
信息安全等级保护安全建设防护解决方案(总体资料)
运维·开发语言·数据库·面试·职场和发展
房产中介行业研习社2 小时前
2026年3月哪些房源管理系统功能全
大数据·运维·人工智能
朱包林2 小时前
Python基础
linux·开发语言·ide·python·visualstudio·github·visual studio
biubiubiu07063 小时前
Linux / Ubuntu systemd 服务使用说明
linux·运维·ubuntu
MaximusCoder4 小时前
等保测评命令——Anolis Linux
linux·运维·服务器·网络·经验分享·安全·php
田里的水稻4 小时前
ubuntu22.04_构建openclaw开发框架
运维·人工智能·python
线束线缆组件品替网4 小时前
Adam Tech NPC-6-007-BU网线组件详解
服务器·网络·数码相机·智能路由器·电脑·51单片机·电视盒子
zhojiew4 小时前
为agent实现渐进式Skills能力的思考和实践
linux·python·算法
相思难忘成疾4 小时前
《RHEL9虚拟机部署及SSH远程登录实践手册》
linux·运维·ssh·虚拟机
cg_ssh5 小时前
Vue3中样式变量的使用
linux·运维·服务器