Linux_基础指令(一)

目录

1、ls指令

[1.1 ls -l](#1.1 ls -l)

[1.2 ls -a](#1.2 ls -a)

[1.3 ls -i](#1.3 ls -i)

2、pwd指令

3、cd指令

[3.1 路径的概念](#3.1 路径的概念)

[3.1.1 绝对路径](#3.1.1 绝对路径)

[3.1.2 相对路径](#3.1.2 相对路径)

[3.2 cd ~](#3.2 cd ~)

[3.3 cd -](#3.3 cd -)

4、touch指令

5、mkdir指令

6、删除系列的指指令

[6.1 rmdir](#6.1 rmdir)

[6.2 rm](#6.2 rm)

7、man指令

8、cp指令

9、move指令

结语


前言:

Linux由林纳斯·托瓦兹于1991.10.5发布,是一款开放源代码的操作系统,Linux的应用场景非常广泛,例如服务器后台、车载系统、嵌入式设备等等,在Linux下有一句很经典的话叫做:一切皆为文件。无论是设备还是文件都当作文件来看待,因此他有着统一的文件操作接口,即拷贝文件、添加文件、删除文件都需要命令行来进行,本文介绍的是最基础的命令行指令对文件的操作。

因此下文中"文件"的概念包括:普通文件和目录(目录的含义对应windows下的文件夹)

1、ls指令

语法:ls [选项] [要执行的目录或者普通文件] (注意指令之间用空格隔开)

他的功能是列出该目录下所有的普通文件和子目录,选项的作用就是可以列出普通文件或目录的更详细的信息,若单独一个ls指令,则只是显示出该目录下的文件名,示例如下:

上图中表示的是,在目录zh下,有普通文件11、普通文件20243.17以及目录code、目录new11(简单来说就是白色文件名是普通文件,而蓝色文件名是目录)并无其他的文件详细信息。

1.1 ls -l

ls后面跟-l表示的是在显示文件名的基础下,还显示出文件的更多属性,即文件的时间、权限、大小,ls -l指令测试如下:

从上图可以发现刚好对应windows下的文件的基本属性。

1.2 ls -a

ls -a也可以查看该目录下的文件,并且包括隐藏文件,那什么又是隐藏文件呢?在Linux下以.开头的文件就叫做隐藏文件,若不使用ls -a是查看不了隐藏文件的,ls -a测试指令如下:

1.3 ls -i

ls -i可以显示出文件的索引信息,即文件的"身份证号码",每个文件都有唯一的索引信息。ls -i测试指令如下:

从上图可以发现,只要是文件就会有索引信息。

2、pwd指令

语法:pwd

该指令的功能就是显示当前目录的路径,pwd指令测试如下:

3、cd指令

语法:cd 目录名/路径

cd的功能是从当前目录进入到某个目录。

3.1 路径的概念

在介绍cd指令前,先引入路径的概念,因为在Linux下,所有的文件和目录都是以多叉树的结构进行存储的,每个节点代表的是一个普通文件或者目录,而该多叉树的根结点称为根目录,他是所有文件的源头,具体示意图如下:

从上图可以得出一个结论,每个文件都会有一条专门的路径且唯一。参考windows下的路径形式:D:\vs代码\test_3_16, \是windows下的路径分隔符,得以将不同层级的文件分割开来。而在Linux下,路径的形式和windows下逻辑是一样的,只不过Linux下的路径分隔符是反斜杠/,比如上图中test.c的路径为:/home/code/test.c。

定位一个文件时,有两种方法:1、绝对路径定位。2、相对路径定位。

3.1.1 绝对路径

从根目录开始定位的路径叫做绝对路径,cd 绝对路径就能进入该路径的最后一个目录,体现绝对路径的用法如下:

值得注意的是,这里cd /home/zh可以写成cd /home/zh/,严格来说后者比较规范因为最后以/结尾表示是一个路径。

3.1.2 相对路径

以当前目录为基准的叫相对路径,比如以下写法:

相对路径的第二种写法,如下:

cd ..也是一种以当前目录为基准,找到上层的目录的方式。

3.2 cd ~

cd ~的作用是不管在哪个目录下,直接回到家目录(家目录即该用户的目录,一般是在home目录下),比如上述进行测试的用户是zh,zh的目录是:/home/zh,则zh就是家目录。

cd ~测试指令如下:

3.3 cd -

cd -的作用是跳转至上一次所在的目录,测试指令如下:

4、touch指令

语法:touch [选项] [文件]

touch的作用是创建一个新的普通文件,若该普通文件存在则更新该文件的创建时间,touch指令测试如下:

5、mkdir指令

语法:mkdir [选项] 目录名

mkdir是在当前目录下创建一个新的目录,值得注意的是:若选项为-p时,目录名可以是一条路径,即一次性创建多个目录,mkdir指令测试如下:


mkdir -p 路径,创建一条路径下多个目录:

此处的tree指令可以在屏幕上打印出当前目录下的所有内容的结构,tree是需要下载的,他的下载指令为:yum install -y tree。

6、删除系列的指指令

首先,rm -rf /*或者rm -rf /这两个删除指令会删除根目录以下的所有文件,也就是说若执行了该指令则Linux系统会直接崩溃,所有不要执行这句指令!!!

6.1 rmdir

rmdir只能删除空目录,但是必须得有该文件的使用权,他是与mkdir对应的,rmdir指令测试如下:


但是用rmdir删除上文创建的z1目录,则会删除失败,因为z1目录不是一个空目录,需要对应的使用rmdir -p 路径的形式进行删除:

若想删除非空目录,则还可以使用另一种删除指令:rm。

6.2 rm

语法:rm [选项] 文件名

rm可以删除任何文件, 甚至可以删除没有权限的文件,所以rm用起来即方便又危险。当rm不带任何选项时,只可以删除普通文件,rm指令测试如下:


若想删除目录还需要在选项处加上-r,则rm -r可以删除该目录下的一切文件(除了只读权限的文件), 测试如下:

rm -f可以删除权限为只读的文件,-f意为强制的意思,因此rm -r -f才是真正的可以删除一切文件。

7、man指令

因为Linux的指令有很多,若有些记不住则可以查看联机手册,则直接在Linux下通过man指令进行手册的查看,甚至一些c语言的库函数也可以通过man指令查找。

语法:man [选项] 命令/库函数

比如查找指令ls的用法:


也可以使用man man直接打开手册的具体内容(手册总共分八章):

比如我们要查找strlen函数的具体用法,可以使用指令man 3(对应手册第三章的内容) strlen,指令测试如下:

8、cp指令

语法:cp [选项] 源文件 目标处

cp的功能就是拷贝文件,若没有选项,则cp只能拷贝普通文件,cp拷贝普通文件的测试代码如下:


若想拷贝目录,则选项要为-r,即cp -r 目录名,测试指令如下:

9、move指令

语法:mv [选项] 源文件 目标处/新的名字

move的缩写是mv,他的作用是可以移到文件或者将文件重命名,若mv的第二个参数是路径则发生的是移动,mv移动的指令:


若mv的第二个参数是一个文件名则发生的是重命名,mv进行重命名的测试:

结语

以上就是关于Linux下的基础指令讲解,可以发现这些基础指令实现的是对文件的添加、删除、查看文件属性、修改文件名,以及路径的更换,只不过有些指令只对普通文件生效,而对目录的指令则需要多加一些选项。

最后希望本文可以给你带来更多的收获,如果本文对你起到了帮助,希望可以动动小指头帮忙点赞👍+关注😎+收藏👌!如果有遗漏或者有误的地方欢迎大家在评论区补充,谢谢大家!!

相关推荐
州周29 分钟前
Ftp目录整个下载
linux·服务器·数据库
Jackey_Song_Odd30 分钟前
Ubuntu 24.04.1 解决部分中文字符(门、径)显示错误的问题
linux·ubuntu
kaixin_learn_qt_ing42 分钟前
Linux export命令
linux
余额不足121381 小时前
C语言基础十六:枚举、c语言中文件的读写操作
linux·c语言·算法
冷曦_sole1 小时前
linux-19 根文件系统(一)
linux·运维·服务器
AI大模型学徒1 小时前
Linux(二)_清理空间
linux·运维·服务器
花鱼白羊1 小时前
TCP Vegas拥塞控制算法——baseRtt 和 minRtt的区别
服务器·网络协议·tcp/ip
云川之下1 小时前
【linux】 unshare -user -r /bin/bash命令详解
linux·bash·unshare
tntlbb1 小时前
Ubuntu20.4 VPN+Docker代理配置
运维·ubuntu·docker·容器
热心市民运维小孙1 小时前
Ubuntu重命名默认账户
linux·ubuntu·excel