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

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

相关推荐
Amelio_Ming20 分钟前
linux 内核 static-key机制分析
linux
yl--炼气28 分钟前
windows下wsl-ubuntu子系统的位置怎样从C盘转到其他盘
linux·运维·ubuntu
博睿谷IT99_1 小时前
红帽认证 Linux安全 级别
linux·运维·安全
超爱吃香菜的菜鸟1 小时前
关于我的服务器
运维·服务器
Cv打怪升级2 小时前
ubuntu 常用指令
linux·运维·ubuntu
用手码出世界2 小时前
【Linux】进程池bug、命名管道、systemV共享内存
linux·运维·bug
LL1681992 小时前
SSM考研助手管理系统
java·服务器·开发语言·数据库·学习
半吊子的程序狗3 小时前
docker测试镜像源
运维·docker·容器
正点原子3 小时前
【正点原子STM32MP257连载】第二章 ATK-DLMP257B使用前准备 #串口软件 #MobaXterm
linux·stm32·单片机·嵌入式硬件
MobiCetus3 小时前
Linux Kernel 7
linux·运维·服务器·windows·ubuntu·centos·gnu