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把目录整出来,才能创建文件

相关推荐
HideF3 分钟前
Linux sudo
linux
FlightYe26 分钟前
视界原理之3D视频(四):裸眼、眼镜和头显
android·linux·c++·3d·ffmpeg·音视频
蹊黎1 小时前
Linux 下用 C 语言实现进度条
linux·c语言·单片机
知已难寻2 小时前
03 · OpenStack的计算管理 Nova
运维·服务器·开发语言·云原生·云计算·openstack·开源软件
huainingning3 小时前
Windows syslog日志服务器搭建与模拟器对接
运维·服务器·智能路由器
牛马鸡niumasi3 小时前
【Linux】C语言文件操作
linux
say_fall3 小时前
【Linux系统编程】Ext 文件系统:磁盘与存储、文件与目录、现代计算机究竟如何寻找文件
linux·运维·服务器·数据库·c++
wacsii3 小时前
【Linux进程(一)】Linux 进程初探:操作系统如何管理进程?fork() 为什么返回两次?
linux·运维·服务器
共享家95273 小时前
408 操作系统第一章
服务器·数据库·windows
AI+程序员在路上4 小时前
RV1126B 上支持的模型及全流程应用--从CNN及语音到 LLMVLM 与跨平台选型
linux·c语言·人工智能