Linux常见指令大全(必要+知识点)

目录

ls 指令☑️

Windows 中会自动显示当前目录当中的所有子目录与文件,但是在Linux中要用到ls指令。

语法: ls [选项][目录或文件]
**功能:**对于目录,该命令列出该目录下的所有子目录与文件。对于文件,将列出文件名以及其他信息。

目录下所有文件 (蓝色为目录f1,文件为t1)

常用选项:

1)-a 列出目录下的所有文件,包括以 . 开头的隐含文件。

每个目录下默认存在两个隐含文件 . 和 . . ( . 代表当前目录 . . 代表上级目录)。

2)-d 将目录像文件一样显示,而不是显示其下的文件。

3)-i 输出文件的i节点的索引信息。

4)-sk 以k字节的形式表示文件的大小 。

小技巧-》total 总字节数

5)-l 列出文件的详细信息。

小技巧:ls -l 也可以简写为 ll表示更详细信息。

6)-n 用数字的UID,GID代替名称。

7)-r 对目录反向排序。

8)-t 以创建时间排序。

9)-R 列出所有子目录下的文件。

10)-1 一行只输出一个文件。


pwd指令☑️

语法: pwd
功能: 显示用户当前所在的目录。


whoami指令☑️

语法: whoami
功能: 显示用户当前的身份。


tree 指令☑️

tree +指定目录或什么都不加,以树形结构,展示文件和目录结构


cd指令☑️

Linux系统中,磁盘上的文件和目录被组成一棵目录树,每个节点都是目录或文件。

在Windows当中,我们可以通过鼠标点击的方式在各个目录之间来回跳转,而在Linux当中我们需要用到cd指令来实现该操作。

语法 : cd 目录名
功能: 改变工作目录。将当前工作目录改变到指定的目录下。

常用方式:

1)cd ..(返回上级目录)。

2)cd ~ (进入主工作目录)。

3)cd -:返回最近访问目录

  1. 绝对路径 :具有唯一性的,定位文件的方式。

5)相对路径:以当前路径为参考查找定位目标文件的路径。


clear指令☑️

语法: clear
功能: 清空屏幕。


touch指令☑️

语法 : touch 选项 文件
功能: touch命令参数可更改文档或目录的日期时间,包括存取时间和更改时间,或者新建一个不存在的文件。

常用选项:

1)-a 或 --time=atime 或 --time=access 或 --time=use 只更改存取时间。

2)-c 或 --no-create 不建立任何文档。

3)-d 使用指定的日期时间,而非现在的时间。

4)-f 此参数将忽略不予处理,仅负责解决BSD版本touch指令的兼容性问题。

5)-m 或 --time=mtime 或--time=modify 只更改变动时间。

6)-r 把指定文档或目录的日期时间,统统设成和参考文档或目录的日期时间相同。

7)-t 使用指定的日期时间,而非现在的时间。


mkdir指令☑️

在Windows中我们通过Ctrl+Shift+N在当前目录新建一个空目录,我们若是想在Linux当中新建一个空目录,则需要用到mkdir指令。

语法 : mkdir 选项 dirname
功能: 在当前目录下创建一个名为"dirname"的目录。

常用选项:

1)-p dirname可以是一个路径名称,此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建立好那些尚不存在的目录,即一次可以建立多个目录。


rmdir指令☑️

rmdir是一个与mkdir相对应的指令,mkdir是建立目录,而rmdir是删除目录。

语法 : rmdir 选项 dirname
功能 : 删除空目录。
适用对象: 具有当前目录操作权限的所有使用者。

常用选项:

1)-p 当子目录被删除后如果父目录也变成空目录的话,就连同父目录一起删除。

常用选项:

1)-p 当子目录被删除后如果父目录也变成空目录的话,就连同父目录一起删除。


rm指令☑️

rmdir指令只能用于删除空目录,若是要相删除其他文件,则需要用到rm指令。

语法: rm 选项 dirname
功能: 删除文件或目录。
适用对象: 所有使用者。

常用选项:

1)-i 删除前逐一询问确认。

2)-f 即强制删除。

3)-r 删除目录及其下所有文件(递归式删除)。

小技巧: 当你要删除当前目录下的所以文件时,可以使用通配符 *

建议在通配符 * 前面加上 . / 告知系统要删除的资源在当前目录下( . 代表当前目录)。

特别注意: 上面说到 -f 是强制性删除-r 是递归式删除,这两个结合在一起就是递归式强制性删除,千万不要执行以下指令,因为在Linux当中没有类似回收站的东西也没有撤销删除的功能,删除指令一旦执行则是不可逆的

该指令的意思是从(/)根目录开始进行递归式强制性删除,即删除根目录下所有文件,这是一个大忌,典型的删库跑路行为。所以,当你要使用"rm -rf dirname"这条指令前,你必须明确以下两点:

1、你清楚的知道你自己正在干什么。

2、执行该命令后所造成的结果是你能够承担的。


man指令☑️

Linux的指令有很多参数,我们不一定能全部记住,我们可以通过查看联机手册获取帮助。访问Linux手册页的指令便是man。 (你问一个男人👨)

语法: man 选项 指令
功能: 查看指令的使用规则等。

常用选项:

1)-k 根据关键字搜索联机帮助。

2)num 只在第num章节查找。

3)-a 将所有章节的查找结果都显示出来。

自己问自己

手册分为8章:

1)可执行程序或shell命令。

2)系统调用(内核提供的函数)。

3)库函数(程序库中的函数)。

4)特殊文件(通常在/dev中找到)。

5)文件格式和约定,如/etc/passwd。

6)游戏。

7)杂项。

8)系统管理命令(通常仅限于root用户)。


cp指令☑️

在Windows中我们可以通过Ctrl+C和Ctrl+V将一个地方的文件或目录复制一份到另一个地方,我们若是在Linux当中想要完成该操作,就要用到cp指令。

语法: cp 选项 源文件或目录 目标文件或目录

功能: 复制文件或目录。

常用选项:

1)-f 或 --force 强行复制文件或目录,不论目标文件或目录是否已经存在。

2)-i 或 --interactive 覆盖文件之前先询问用户。

3)-r 或 -R 递归处理,将指定目录下的文件与子目录一并处理,若源文件或目录的形态不属于目录或符号链接,则一律视为普通文件处理

小技巧: 当我们需要将当前目录的所有内容进行拷贝时,可以用到通配符进行拷贝。


mv指令☑️

在Windows中我们经常使用Ctrl+X和Ctrl+V将一个地方的文件或目录移动到另一个地方,我们若是要在Linux当中完成此操作,则需要使用mv指令。

语法 : mv 选项 源文件或目录 目标文件或目录
功能 : 视mv指令当中两个参数的不同而不同。

1)当第二个参数是不存在的名称时,mv指令完成文件重命名或目录重命名

2)当第二个参数是已存在目录名称时,mv指令将文件移动置该目录中。--》剪切拷贝

常用选项:

1)-f 强制的意思(force),如果目标文件已经存在,不会询问而直接覆盖。

2)-i 若目标文件已经存在,则会询问是否覆盖。


cat指令☑️

在Linux当中无法想Windows一样用鼠标点开某一文件进行阅读,要想阅读文件可以用cat指令。

语法 : cat 选项 文件
功能: 查看目标文件的内容。

常用选项:

1)-b 对非空输出行编号

注意⚠️:这里只是直接换行才为空,若有空格也有编号

2)-n 对输出的所有行编号。

3)-s 禁止重复的空输出行。

注意⚠️:这里只是直接换行才为空,若有空格也会输出

注意: cat指令会将目标文件内容全部打印到屏幕上。若是目标文件内容过大,则会导致刷屏(直到将文件内容全部打印到屏幕上)。因此cat指令一般仅适用于查看内容较少的文件。

知识点 :> 重定向 >>追加重定向

作用:把命令返回的结果输出到文件中(会覆盖之前的数据)

用法:命令 > 文件名

把当前目录的内容输出到a.txt文件中(top.c之前的内容会被清空)

**>> :**追加到文件中(不会覆盖之前的数据)


tac指令☑️

使用tac指令,我们可以反向查看目标文件的内容。

语法: tac 文件
功能: 反向查看目标文件的内容。


more指令☑️

上面说到,cat指令仅适用于查看内容较少的文件,我们若是要查看海量信息文件,则可以适用more指令。

语法: more 文件
功能: 查看目标文件的内容。


注意: more指令只能通过按回车键进行下翻操作,无法进行上翻操作,并且more指令在查看之前会先加载整个文件。

less指令☑️

上面的more指令只能进行下翻操作,而less指令可以同时支持上翻和下翻操作。

语法 : less 选项 文件
功能: 既有查看目标文件的内容的功能,又有搜索功能。

注意: less指令可以通过按上下键进行上翻和下翻操作,并且less指令在查看之前不会加载整个文件。 按 ctrl键+C退出

常用选项:

1)-i 忽略搜索时的大小写。

2)-N 显示每行的行号。

3)/字符串 向下搜索"字符串"的功能。

4)?字符串 向上搜索"字符串"的功能。

5)n 重复前一个搜索(与/或?有关)。

6)N 反向重复前一个搜索(与/或?有关)。


head指令☑️

语法: head 选项 文件

功能: 用于显示文件的开头至标准输出中,默认head指令打印其相应文件的开头10行。

常用选项:

1)-n 需要显示的行数。


tail指令☑️

语法: tail 选项 文件

功能: 用于显示文件的末尾至标准输出中,默认tail指令打印其相应文件的末尾10行。

常用选项:

1)-n 需要显示的行数。

2)-f 循环读取。

拓展:如何读取文件中间某一段内容?

例如,现在文件当中有十万行内容,我们如何读取第1001至1010行?

在认识了head和tail指令后,你可能很容易想到如下方法:先用head指令读取1文件中的前1010行存入临时文件2中,然后将2文件的后10行打印输出即可。

演示以top.c中有20个数据读取中间11 12 13

知识点 >(输出重定向)将本应该输出到屏幕的内容输出重定向到tep.txt文件当中

这样写显然有点麻烦(还需要创建一个临时文件),有一种简便的方式可以实现该操作,该方式需要用到"命令行管道"。

我们知道,管道是用于传输某种资源的(下水管道用于传输水,天然气管道用于传输天然气),而计算机上面最重要的资源就是数据。

在指令中管道用"|"来表示,管道左边接收产生的数据,右边读取数据。:


date指令☑️

语法: date 选项 格式
功能: 用于显示时间、设置时间、完成时间与时间戳之间的相互转换等。

用法一 : 用于显示时间,使用者可以选定欲显示的格式,格式设定为一个加号,后接数个标记,其中常用的标记如下:

1)%H 显示当前的小时,范围(00~23)。

2)%M 显示当前的分钟,范围(00~59)。

3)%S 显示当前的秒数,范围(00~59)。

4)%X 相当于%H:%M:%S。

5)%d 显示当前的号数。

6)%m 显示当前的月份。

7)%Y 显示当前的年份。

8)%F 相当于%Y-%m-%d。

用法二 : 完成时间与时间戳之间的相互转换。

1)date +%s 显示当前时间的时间戳。

知识点:时间戳是当前时间与计算机起始时间的差值,单位为秒。

2)date -d @时间戳 将时间戳转换为时间。


cal指令☑️

cal指令可以用于显示公历(阳历)日历。

语法: cal 选项 月份 年份
功能: 用于查看日历等时间信息,如只有一个参数,则表示年份(1~9999),如有两个参数,则表示月份和年份。

常用选项:

1)-3 显示系统前一个月、当前月以及下一个月的日历。

2)-j 显示在当年中的第几天(一年日期按天算,从1月1号算起,默认显示当前月在一年中的天数)。

3)-y 显示当前年份的日历。


find指令☑️

语法: find 路径 选项 ...
功能: 用于在文件树中查找文件,并作出相应的处理(可能访问磁盘->效率比较低)。

常用选项:

1)-name 按照文件名查找文件。

2)-size 按照文件大小查找文件。


which指令☑️

Linux当中的每个指令其实都是用计算机语言编写出的可执行程序,这些程序都存储在文件当中,我们可以通过which指令查看某一指令的程序文件所在路径。

语法: which 指令
功能: 用于查找某一指令的程序文件所在路径。

当我们执行某一指令时,实际是调用其可执行程序,因此我们还可以通过其程序文件的所在路径进行调用该指令


alias指令☑️

当你觉得某一指令太长时,你可以使用alias指令给它起一个别名。

语法: alias 别名='原名'
功能: 可以用于给指令取别名。

不推荐

知识点:当账号改变或从新登录就恢复如初了


grep指令✔

grep指令类似于关键词搜索(行过滤器)。

语法: grep 选项 搜寻字符串 文件
功能: 在文件中搜索字符串,将找到的行打印出来。

常用选项:

1)-i 忽略大小写进行查找。

2)-n 输出行号。

3)-v 反向选择,显示出没有待搜索字符串的行。


如何添加与删除用户?

当我们购买了云服务器后,我们得到的是一个root账号。

实际上,使用root账号是比较危险的,因为root账号的权限太大,为了避免自己对某些系统文件进行误操作,我们最好创建一个普通用户的账号使用。

如何添加一个普通用户账号?

第一步: 输入addser  ?(?是待创建的用户的用户名)。

后面填的信息不同设备不一样,有的没有,有的有。

随意填就行不影响

知识点linux中密码是不显示的所以要想好

如何删除用户账号?

删除账号时之间输入userdel -r ?(?是要删除的用户的用户名)。

就没有 erman了

注意: 创建和删除用户的操作者都必须是root用户,而不是普通用户。


zip/unzip指令打包压缩☑️

zip指令用于打包压缩目录或文件。

语法: zip 选项 压缩文件.zip 待打包目录或文件
功能: 将目录或文件打包压缩成zip格式。
常用选项:

1)-r 递归处理,将指定目录下的所有文件和子目录一并处理。

以打包目录为例

unzip指令用于解压文件。

语法: unzip 压缩文件.zip 选项 目录
功能: 将压缩文件解压到指定目录当中。

注意: 解压文件时若不带-d选项和目标目录,则默认解压到当前目录下。


tar指令☑️

tar指令也可以用来打包压缩和解压文件(格式为.tgz),并且还可以实现不解开压缩包,直接查看里面内容的操作,以及只打包不压缩等操作。

语法: tar 选项 压缩文件 ...

功能: 打包/解包,不解开压缩包,直接查看里面内容。

常用选项:

1)-c 建立一个压缩文件的参数指令(create的意思)。

2)-x 解开一个压缩文件的参数指令。

3)-t 查看tarfile里面的文件。

4)-z 是否同时具有gzip属性?即是否需要用gzip压缩?

5)-j 是否同时具有bzip2属性?即是否需要用bzip2压缩?

6)-v 压缩的过程中显示文件(常用)。

7)-f 使用档名,请留意,在f之后要立即接档名,不要再加参数。

8)-C 解压到指定目录。

打包示例:

解包示例:

-C 指定地方

Linux中规定在同级目录下不允许出现同名目录, -C 后面是非同名的

不解开压缩包,直接查看里面内容:


file指令☑️

语法: file
功能: 查看文件的更多属性信息。


bc指令☑️

Windows里面有计算器,Linux下面也有,bc指令就是Linux下的计算器。

语法: bc
功能: 进行运算。

退出方法: 先ctrl+c再输入quit


uname指令☑️

语法: uname 选项
功能: 用于获取电脑和操作系统的相关信息。
常用选项:

1)-r 输出电脑和操作系统相关信息。

2)-a 详细输出所有信息,依次为内核名称,主机名,内核版本号,内核版本,硬件名,处理器类型,硬件平台类型,操作系统名称。


nano指令☑️

语法: nano 文件.后缀

功能:打开并写入文件

回车↩︎

退出方式 ctrl+x 并添y

编写方式 由于写的是c程序所以用gcc编写 第一次用可能云服务器阉割要下载插件


su指令☑️

语法:su 账户

功能:命令用于变更为其他使用者的身份,除 root 外,需要键入该使用者的密码。

普通账户--》root账户

第一种

第二种

root --》普通账户

关机指令✔

语法: shutdown 选项
常见选项:

1)-h 将系统的服务停掉后,立即关机。

2)-r 将系统的服务停掉之后就重新启动。

3)-t sec 经过sec秒后关机。
注: 所有关机指令只能由root用户执行,且购买的云服务器是不关闭的,关闭可能产出后果哦。


相关推荐
C++忠实粉丝30 分钟前
Linux系统基础-多线程超详细讲解(5)_单例模式与线程池
linux·运维·服务器·c++·算法·单例模式·职场和发展
zhuyan10838 分钟前
【VMware】使用笔记
服务器
华纳云IDC服务商1 小时前
CentOS系统中查看内网端口映射的多种方法
linux·运维·centos
EasyCVR1 小时前
EHOME视频平台EasyCVR萤石设备视频接入平台视频诊断技术可以识别哪些视频质量问题?
服务器·人工智能·计算机视觉·音视频·1024程序员节
中云DDoS CC防护蔡蔡2 小时前
棋牌游戏防ddos攻击,高防IP好用吗?
运维·服务器·游戏·网络安全·ddos
gengjianchun2 小时前
clickhouse 安装配置
服务器·网络·clickhouse
光芒再现dev2 小时前
CentOS—OpenEulerOS系统联网指南
linux·运维·centos
蓝莓星冰乐2 小时前
Linux入门(2)
linux·运维·服务器
吉吉612 小时前
Nginx:我自己的网站
运维·nginx