Linux常用命令及说明,配图

一、Linux的目录结构

1.Linux操作系统的目录结构

Linux的目录结构是一个树型结构
Windows 系统可以拥有多个盘符, 如 C盘、D盘、E盘
Linux没有盘符这个概念, 只有一个根目录 /, 所有文件都在它下面

2.Linux路径的描述方式

在Linux系统中,路径之间的层级关系,使用:/来表示(快速区分,Linux第一个字母L左斜)

在Windows系统中,路径之间的层级关系,使用:\ 来表示

3./在Linux中的表示

出现在开头的/表示:根目录

出现在后面的/表示:层次关系

二、基础Linux命令

1.命令与命令行

我的感觉就是,你打开终端看到的就是命令行,输入的就是命令

2.Linux命令基础格式

通用格式:command [-options] [parameter]

command: 命令本身
-options:[可选,非必填]命令的一些选项,可以通过选项控制命令的行为细节
parameter:[可选,非必填]命令的参数,多数用于命令的指向目标等

3.ls命令

3.1.ls基本格式

ls [-a -l -h] [Linux路径]

-a-l-h 是可选的选项
Linux路径是此命令可选的参数

3.2.ls命令作用

当不使用选项和参数,直接使用ls命令本体,表示:以平铺形式,列出当前工作目录下的内容(默认是HIOME下的文件或文件夹)

image

3.3.HOME目录

每个用户在Linux系统的专属目录,默认在:/home/用户名

3.4.当前工作目录

Linux命令在执行命令的时候,需要一个工作目录,打开命令行程序默认的工作目录是用户的HOME目录

3.5.ls+路径

ls /    // 代表查看根目录

根目录查看方式

image

image

3.6.参数-a

查看全部文件、文件夹包括隐藏文件,带点的文件是隐藏文件

image

3.7.参数-l

以列表(竖向排列)的形式展示内容,并展示更多信息

image

3.8.参数-h

要与-l一同使用,可以把内存大小更人性化的展示出来,小于1k不显示单位

image-20240323173314752

3.9.组合使用的两种方式(自行组合)

ls -a -l
ls -al

4.cd命令(Change Directory)

4.1.cd基本格式

cd [Linux路径]

cd命令无需选项,只有参数,表示要切换到哪个目录下
cd命令直接执行,不写参数,表示回到用户的HOME目录

4.2作用

可以通过cd命令,更改当前所在的工作目录

下图的home笔误应该是HOME或者说是/home/用户名

image

4.3特殊路径符

.表示当前目录,比如 cd ./Desktop 表示切换到当前目录下的Desktop目录内,和cd Desktop效果一致

..表示上一级目录,比如:cd .. 即可切换到上一级目录,cd ../.. 切换到上二级的目录

~表示HOME目录,比如:cd ~ 即可切换到HOME目录或cd ~/Desktop,切换到HOME内的Desktop目录,有点像vue里用@代表src

4.4小细节

如果你要找当前目录下的下级目录直接cd 需要的目录名字,如果加/代表从根目录去找,具体可以看看绝对目录相对目录的概念

image

5.pwd命令(Print Work Directory)

5.1pwd基本格式

pwd

pwd命令,无选项,无参数,直接输入pwd即可

5.2作用

输出当前所在的工作目录

image

6.mkdir(Make Directory)

6.1mkdir基本格式

mkdir [-p] Linux路径

参数必填,表示Linux路径,即要创建的文件夹的路径,相对路径或绝对路径均可

-p选项可选,表示自动创建不存在的父目录,适用于创建连续多层级的目录

6.2作用

创建目录

image

image

7.touch

7.1touch基本格式

touch Linux路径

touch命令无选项,参数必填,表示要创建的文件路径,相对、绝对、特殊路径符均可以使用

7.2作用

创建文件

image

8.cat

8.1cat基本格式

cat Linux路径

cat没有选项,只有必填参数,参数表示:被查看的文件路径,相对、绝对、特殊路径符都可以使用

8.2作用

查看文件内容

image

9.more

9.1more基本格式

more Linux路径

没有选项,只有必填参数,参数表示:被查看的文件路径,相对、绝对、特殊路径符都可以使用

9.2作用

查看文件内容,与cat相比支持翻页,用于查看文本较多的文件

空格下一页,b上一页,q退出

例如  more /etc/service

image

10.cp(copy)

10.1cp的基本格式

cp [-r] 参数1 参数2

-r选项,可选,用于复制文件夹使用,表示递归

参数1,Linux路径,表示被复制的文件或文件夹(代表windows ctrl+c)

参数2,Linux路径,表示要复制去的地方(代表windows ctrl+v)

10.2作用

cp命令可以用于复制文件\文件夹,给路径的时候就连带着改名了

image

11.mv(move)

11.1move的基本格式

mv 参数1 参数2

参数1,Linux路径,表示被移动的文件或文件夹

参数2,Linux路径,表示要移动去的地方,如果目标不存在,则进行改名,确保目标存在

11.2作用

相当于剪切

image

12.rm(remove)

12.1rm的基本格式

rm [-r -f] 参数1 参数2 ... 参数n

同cp命令一样,-r选项用于文件夹操作

-f表示force,强制删除(不会弹出提示确认信息)

普通用户删除内容不会弹出提示,只有root管理员用户删除内容会有提示

所以一般普通用户用不到-f选项

参数1、参数2、......、参数N 表示要删除的文件或文件夹路径,按照空格隔开

12.2作用

删除文件/文件夹

image

12.3通配符

rm命令支持通配符 *,用来做模糊匹配

符号* 表示通配符,即匹配任意内容(包含空),示例:

test*,表示匹配任何以test开头的内容

*test,表示匹配任何以test结尾的内容

*test*,表示匹配任何包含test的内容

image

系统管理员下删除su - root+密码进入(密码不显示)exit退出

image

12.4程序员必会技能(清空控制台)

先进入root模式,使用前记得拍个快照

rm -rf /*

13.which

13.1which的基本格式

which 要查找的命令

13.2作用

可以通过which命令,查看所使用的一系列命令的程序文件存放在哪里

image

14.find

14.1find的基本格式

find 起始路径 -name "被查找的文件名"

find 起始路径 -size +|-n[kMG]

可以使用通配符

+、- 表示大于和小于,不写就代表等于

n表示大小数字

kMG表示大小单位,k(小写字母)表示kb,M表示MB,G表示GB

14.2作用

可以通过find命令去搜索指定的文件

image

find / -size 100k

image

15.grep

15.1grep的基本格式

grep [-n] 关键字 文件路径

选项-n,可选,表示在结果中显示匹配的行的行号。

参数,关键字,必填,表示过滤的关键字,带有空格或其它特殊符号,建议使用""(双引号)将关键字包围起来

参数,文件路径,必填,表示要过滤内容的文件路径,可作为内容输入端口

15.2作用

可以通过grep命令,从文件中通过关键字过滤文件行

image

15.3管道符

|含义将管道符左边命令的结果,作为右边命令的输入

image

16.wc

16.1wc的基本格式

wc [-c -m -l -w] 文件路径

选项,-c,统计bytes数量

选项,-m,统计字符数量

选项,-l,统计行数

选项,-w,统计单词数量

参数,文件路径,被统计的文件,可作为内容输入端口

16.2作用

通过wc命令统计文件的行数、单词数量等

image

17.echo

17.1echo的基本格式

echo 要输出的内容

就跟print一样,要是输出的多用""包裹起来,要是想输出一些特殊的用反引号`包裹

17.2作用

输出语句

image

image

如果想用/ echo /就行

但是想用\ 得echo \\

18.重定向符

18.1重定向符的基本格式

重定向符:>和>>

> ,将左侧命令的结果,覆盖写入到符号右侧指定的文件中

>>,将左侧命令的结果,追加写入到符号右侧指定的文件中

18.2作用

添加内容

image

image

19.tail

19.1tail的基本格式

tail [-f -num] Linux路径

参数,Linux路径,表示被跟踪的文件路径

选项,-f,表示持续跟踪

选项, -num,表示,查看尾部多少行,不填默认10行

19.2作用

倒着查看内容

image

-f的使用样例

image

image

ctrl+c退出

20.vi\vim编辑器

20.1介绍

vim 是 vi 的加强版本,兼容 vi 的所有指令,不仅能编辑文本,而且还具有 shell 程序编辑的功能,可以不同颜色的字体来辨别语法的正确性,极大方便了程序的设计和编辑性。

20.2vi\vim编辑器的三种工作模式

命令模式(Command mode)

命令模式下,所敲的按键编辑器都理解为命令,以命令驱动执行不同的功能。此模型下,不能自由进行文本编辑。

输入模式(Insert mode)

也就是所谓的编辑模式、插入模式。 此模式下,可以对文件内容进行自由编辑。

底线命令模式(Last line mode)

以:开始,通常用于文件的保存、退出。

image

20.3命令模式

vi 文件路径或者vim 文件路径

如果文件路径表示的文件不存在,那么此命令会用于编辑新文件

如果文件路径表示的文件存在,那么此命令用于编辑已有文件

模式 命令 描述
命令模式 i 在当前光标位置进入输入模式
命令模式 a 在当前光标位置之后进入输入模式
命令模式 I 在当前行的开头,进入输入模式
命令模式 A 在当前行的结尾,进入输入模式
命令模式 o 在当前光标下一行进入输入模式
命令模式 O 在当前光标上一行进入输入模式
命令模式 ESC 任何情况下输入esc都能回到命令模式
命令模式 键盘上、键盘k 向上移动光标
命令模式 键盘下、键盘j 向下移动光标
命令模式 键盘左、键盘h 向左移动光标
命令模式 键盘右、键盘l 向后移动光标
命令模式 0 移动光标到当前行的开头
命令模式 $ 移动光标到当前行的结尾
命令模式 pageup( Pgup) 向上翻页
命令模式 pangdown(PgDn) 向下翻页
命令模式 / 进入搜索模式
命令模式 n 向下继续搜索
命令模式 N 向上继续搜索
命令模式 dd 删除光标所在行的内容
命令模式 ndd n是数字,表示删除当前光标向下n行
命令模式 yy 复制当前行
命令模式 nyy n是数字,复制当前行和下面的n行
命令模式 p 粘贴复制的内容
命令模式 u 撤销修改
命令模式 ctrl+r 反向撤销修改
命令模式 gg 跳到首行
命令模式 G 跳到行尾
命令模式 dG 从当前行开始,向下全部删除
命令模式 dgg 从当前行开始,向上全部删除
命令模式 d$ 从当前光标开始,删除到本行的结尾
命令模式 d0 从当前光标开始,删除到本行的开头

20.4底线命令模式

输入进入底线命令模式

模式 命令 描述
底线命令模式 :wq 保存并退出
底线命令模式 :q 仅退出
底线命令模式 :q! 强制退出
底线命令模式 :w 仅保存
底线命令模式 :set nu 显示行号
底线命令模式 :set nonu 不显示行号
底线命令模式 :set paste 设置粘贴模式
底线命令模式 :set nopaste 不设置粘贴模式

三、Linux用户和权限

1.root用户

root用户拥有最大的系统操作权限,而普通用户在许多地方的权限是受限的。

普通用户的权限,一般在其HOME目录内是不受限的

一旦出了HOME目录,大多数地方,普通用户仅有只读和执行权限,无修改权限

image

1.1su(Switch User)和exit

格式:su [-] [用户名]

-符号是可选的,表示是否在切换用户后加载环境变量(后续讲解),建议带上

参数:用户名,表示要切换的用户,用户名也可以省略,省略表示切换到root

切换用户后,可以通过exit命令退回上一个用户,也可以使用快捷键:ctrl + d

1.2sudo

使用sudo命令,为普通的命令授权,临时以root身份执行。

基本格式 sudo 其他命令

1.3为普通用户配置sudo认证

1.切换到root用户

2.进入sudoers文件中,两种方式①visudovim /etc/sudoers

3.在最后一行加用户名 ALL=(ALL) NOPASSWD: ALL (NOPASSWD前是一个制表符按一下TAB就行,还有不要写成PASSWORD了)

image

4.esc +:wq+回车

5.回到普通用户

image

2.用户、用户组管理

image

Linux中关于权限的管控级别有2个级别,分别是:

针对用户的权限控制

针对用户组的权限控制

2.1用户组管理

以下命令需root用户执行

①创建用户组

groupadd 用户组名

②删除用户组

groupdel 用户组名

image

2.2用户管理

以下命令需root用户执行

①创建用户

useradd [-g -d] 用户名

  • 选项:-g指定用户的组,不指定-g,会创建同名组并自动加入,指定-g需要组已经存在,如已存在同名组,必须使用-g

  • 选项:-d指定用户HOME路径,不指定,HOME目录默认在:/home/用户名

②删除用户

userdel [-r] 用户名

  • 选项:-r,删除用户的HOME目录,不使用-r,删除用户时,HOME目录保留

③查看用户所属组

id [用户名]

  • 参数:用户名,被查看的用户,如果不提供则查看自身

④修改用户所属组

usermod -aG 用户组 用户名,将指定用户加入指定用户组

⑤查看系统中的用户

getent passwd

用户名:密码(x):用户ID:组ID:描述信息(无用):HOME目录:执行终端(默认bash)

⑥查看所有组

getentgroup

包含3份信息,组名称:组认证(显示为x):组ID

image

image

image

3.查看权限控制

3.1查看Linux文件的权限管控信息

image

序号1,表示文件、文件夹的权限控制信息

序号2,表示文件、文件夹所属用户

序号3,表示文件、文件夹所属用户组

3.2序号1

权限细节总共分为10个槽位

image

r(read)

  • 针对文件可以查看文件内容

  • 针对文件夹,可以查看文件夹内容,如ls命令

w(write)

  • 针对文件表示可以修改此文件

  • 针对文件夹,可以在文件夹内:创建、删除、改名等操作

x(execute)

  • 针对文件表示可以将文件作为程序执行

  • 针对文件夹,表示可以更改工作目录到此文件夹,即cd进入

4.修改权限控制chmod

4.1chmod的基本格式

chmod [-R] 权限 文件或文件夹

选项:-R,对文件夹内的全部内容应用同样的操作

4.2作用

使用chmod命令,修改文件、文件夹的权限信息

例子去除用户写的权限

image

image

image

image

4.3权限的数字序号(推荐)

权限可以用3位数字来代表,第一位数字表示用户权限,第二位表示用户组权限,第三位表示其它用户权限。

数字的细节如下:r记为4,w记为2,x记为1,可以有:

数字 解释 代表
0 无任何权限 ---
1 仅有x权限 --x
2 仅有w权限 -w-
3 有w和x权限 -wx
4 仅有r权限 r--
5 有r和x权限 r-x
6 有r和w权限 rw-
7 有全部权限 rwx

image

5.修改权限控制chown

5.1chown的基本格式

chown [-R] [用户] [:] [用户组] 文件或文件夹

选项,-R,同chmod,对文件夹内全部内容应用相同规则

选项,用户,修改所属用户

选项,用户组,修改所属用户组

:用于分隔用户和用户组

5.2作用

使用chown命令,可以修改文件、文件夹的所属用户和用户组

普通用户无法修改所属为其它用户或组,所以此命令只适用于root用户执行

image

image

用户组和其他都修改

image

四、Linux实用操作

1.快捷键

1.1ctrl+c强制停止

  • Linux某些程序的运行,如果想要强制停止它,可以使用快捷键ctrl + c

  • 命令输入错误,也可以通过快捷键ctrl + c,退出当前输入,重新输入

image

1.2ctrl+d退出或登出(等同于exit)

  • 可以通过快捷键:ctrl + d,退出账户的登录

image

  • 或者退出某些特定程序的专属页面

image

  • 不能用于退出vi/vim,有时候注意文档提示有用q退出的

image

1.3history历史命令搜索

image

1.4!快速搜索之前的写过的命名

!+前缀+回车,倒着寻找最近的

image

1.5ctrl+r关键字搜索

正着一条

image

1.6光标移动快捷键

ctrl + a,跳到命令开头(shift+7,我喜欢用这个word和写代码的时候都能用)

ctrl + e,跳到命令结尾(shift+1)

ctrl + 键盘左键,向左跳一个单词

ctrl + 键盘右键,向右跳一个单词

1.7清屏

ctrl+l(clear)也就是 翻页,鼠标上滚还是会有

reset,鼠标上滚没有,但是会有history

2.软件安装

2.1Centos安装yum命令安装软件

yum:RPM包软件管理器,用于自动化安装配置Linux软件,并可以自动解决依赖问题。

格式:yum [-y] [install | remove | search] 软件名称

  • 选项:-y,自动确认,无需手动确认安装或卸载过程

  • install:安装

  • remove:卸载

  • search:搜索

yum命令需要root权限,可以su切换到root,或使用sudo提权(前提你配过)。

yum命令需要联网

2.2Ubuntu安装apt命令安装软件

apt:Ubuntu使用apt管理器

格式:apt [-y] [install | remove | search] 软件名称

用法和yum一致,同样需要root权限

  • install:安装

  • remove:卸载

  • search:搜索

3.控制软件启用和关闭

Linux系统很多软件(内置或第三方)均支持使用systemctl命令控制:启动、停止、开机自启

能够被systemctl管理的软件,一般也称之为:服务

格式:systemctl start | stop | status | enable | disable | restart 服务名

  • start 启动
  • stop 关闭
  • status 查看状态
  • enable 开启开机自启
  • disable 关闭开机自启

NetworkManager,主网络服务

network,副网络服务

firewalld,防火墙服务

sshd,ssh服务(FinalShell远程登录Linux使用的就是这个服务)

image

reboot重启

4.软连接

相当于windows的快捷方式,把文件/文件夹连接到另一个位置

格式:ln -s 参数1 参数2

  • s选项,创建软连接

  • 参数1:被链接的文件或文件夹

  • 参数2:要链接去的目的地

image

image

连接后对以前文件/文件夹的操作现在对软连接也生效

想要删除软连接走rm操作就行

5.date命令

格式:date [-d] [+格式化字符串]

  • -d按照给定的字符串显示日期,一般用于日期计算
  • 格式化字符串:通过特定的字符串标记,来控制显示的日期格式

%Y

%y 年份后两位数字 (00..99)

%m 月份 (01..12)

%d 日 (01..31)

%H 小时(00..23)

%M 分钟(00..59)

%S 秒 (00..60)

%s 自 1970-01-01 00:00:00 UTC到现在的秒数

image

image

5.1修改时区

切换root用户

rm -f /etc/localtime

rm -f /etc/localtime

image

5.2自动校准

通过ntp程序自动校准系统时间

安装ntp:yum -y install ntp

启动并设置开机自启:

  • systemctl start ntpd

  • systemctl enable ntpd

当ntpd启动后会定期的帮助我们联网校准系统的时间

也可以手动校准(需root权限):ntpdate -u ntp.aliyun.com

image

6.IP地址、主机名

6.1ip地址

通过命令:ifconfig,查看本机的ip地址,如无法使用ifconfig命令,可以安装:yum -y install net-tools

看ens33就行

image

6.2127.0.0.1

这个IP地址用于指代本机

6.30.0.0.0

特殊IP地址

可以用于指代本机

可以在端口绑定中用来确定绑定关系

在一些IP地址限制中,表示所有IP的意思,如放行规则设置为0.0.0.0,表示允许任意IP访问

6.3主机名

查看主机名hostname

修改主机名hostnamectl set-hostname 主机名,需要root

image

6.4本地域名解析

image

C:\Windows\System32\drivers\etc下的hosts.ics

image

image

image

6.5配置固定IP

1.在VMware Workstation(或Fusion)中配置IP地址网关和网段(IP地址的范围)

2.在Linux系统中手动修改配置文件,固定IP

image

image

修改后重启

root下输入

我喜欢一步一步的写

cd /etc/sysconfig/

cd network-scripts/

vim ifcfg-ens33

当然你可以一步到位

vim /etc/sysconfig/network-scripts/ifcfg-ens33

以上二选一

image

修改

IPADDR="192.168.21.130"
NETMASK="255.255.255.0"
GATEWAY="192.168.21.2"
DNS1="192.168.21.2"

image

保存并退出wq

重启systemctl restart network

7.网络传输

7.1ping命令

通过ping命令,检查指定的网络服务器是否是可联通状态

格式:ping [-c num] ip或主机名

  • 选项:-c,检查的次数,不使用-c选项,将无限次数持续检查

  • 参数:ip或主机名,被检查的服务器的ip地址或主机名地址

image

image

7.2wget命令

wget是非交互式的文件下载器,可以在命令行内下载网络文件

格式:wget [-b] url

  • 选项:-b,可选,后台下载,会将日志写入到当前工作目录的wget-log文件

  • 参数:url,下载链接

7.3curl命令

curl可以发送http网络请求,可用于:下载文件、获取信息等

格式:curl [-O] url 大哦

  • 选项:-O,用于下载文件,当url是下载链接时,可以使用此选项保存文件(下载用,仅查看不需要)

  • 参数:url,要发起请求的网络地址

image

7.4端口

端口,是设备与外界通讯交流的出入口。端口可以分为:物理端口和虚拟端口两类

  • 物理端口:又可称之为接口,是可见的端口,如USB接口,RJ45网口,HDMI端口等

  • 虚拟端口:是指计算机内部的端口,是不可见的,是用来操作系统和外部进行交互使用的

Linux系统可以支持65535个端口,这6万多个端口分为3类进行使用

  • 公认端口:1~1023,通常用于一些系统内置或知名程序的预留使用,如SSH服务的22端口,HTTPS服务的443端口,非特殊需要,不要占用这个范围的端口

  • 注册端口:1024~49151,通常可以随意使用,用于松散的绑定一些程序\服务

  • 动态端口:49152~65535,通常不会固定绑定程序,而是当程序对外进行网络链接时,用于临时使用。

查看端口占用情况

使用nmap命令

安装nmap:yum -y install nmap

格式:nmap IP地址

image

查看指定端口的占用情况

通过netstat命令

安装netstat:yum -y install net-tools

格式:netstat -anp | grep 端口号

image

posted @   芊嵛  阅读(105)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
  1. 1 イエスタデイ(翻自 Official髭男dism) 茶泡饭,春茶,kobasolo
  2. 2 世间美好与你环环相扣 柏松
イエスタデイ(翻自 Official髭男dism) - 茶泡饭,春茶,kobasolo
00:00 / 00:00
An audio error has occurred, player will skip forward in 2 seconds.

作词 : 藤原聡

作曲 : 藤原聡

何度失ったって

取り返して見せるよ

雨上がり 虹がかかった空みたいな

君の笑みを

例えばその代償に

誰かの表情を

曇らせてしまったっていい

悪者は僕だけでいい

本当はいつでも

誰もと思いやりあっていたい

でもそんな悠長な理想論は

ここで捨てなくちゃな

遥か先で 君へ 狙いを定めた恐怖を

遥か先で 君へ 狙いを定めた恐怖を

どれだけ僕は

はらい切れるんだろう?

半信半疑で 世間体

半信半疑で 世間体

気にしてばっかのイエスタデイ

ポケットの中で怯えたこの手は

まだ忘れられないまま

「何度傷ついたって

「何度傷ついたって

仕方ないよ」と言って

うつむいて君が溢した

儚くなまぬるい涙

ただの一粒だって

僕を不甲斐なさで 溺れさせて

理性を奪うには十分過ぎた

街のクラクションもサイレンも

街のクラクションもサイレンも

届きやしないほど

遥か先へ進め 身勝手すぎる恋だと

遥か先へ進め 身勝手すぎる恋だと

世界が後ろから指差しても

振り向かず進め必死で

振り向かず進め必死で

君の元へ急ぐよ

道の途中で聞こえたSOS さえ

気づかないふりで

バイバイイエスタデイ ごめんね

バイバイイエスタデイ ごめんね

名残惜しいけど行くよ

いつかの憧れと違う僕でも

ただ1人だけ 君だけ

守るための強さを

何よりも望んでいた この手に今

遥か先へ進め

遥か先へ進め

幼すぎる恋だと

世界が後ろから指差しても

迷わずに進め 進め

2人だけの宇宙へと

ポケットの中で震えたこの手で今

君を連れ出して

未来の僕は知らない

だから視線は止まらない

謎めいた表現技法

意味深な君の気性

アイラブユーさえ

アイラブユーさえ

風に 飛ばされそうな時でも

不器用ながら繋いだ この手はもう

決して離さずに

虹の先へ

点击右上角即可分享
微信分享提示