Linux的使用

[TOC]

Linux文件

Linux 系统中一切皆文件

Linux目录结构

image-20240922140854301

image-20240922140906156

image-20240922140914261

image-20240922140921862

image-20240922140929714

image-20240922140935222

VIM编辑器

VI 是 Unix 操作系统和类 Unix 操作系统中最通用的文本编辑器。

VIM 编辑器是从 VI 发展出来的一个性能更强大的文本编辑器。可以主动的以字体颜 色辨别语法的正确性,方便程序设计。VIM 与 VI 编辑器完全兼容。

image-20240922153752876

一般模式

1
vim hello.txt

进入文件后默认为一般模式,如果进入别的模式需要切换回一般模式,按esc即可

一般模式常用命令如下:

image-20240922153053809

编辑模式

在一般模式下,按 i 即可进入编辑模式

注意了!通常在Linux中,按下这些按键时,在画面的左下方会出现『INSERT或 REPLACE』的字样,此时才可以进行编辑。而如果要回到一般模式时, 则必须要按下 『Esc』这个按键即可退出编辑模式

image-20240922153541296

指令模式

在一般模式下输入 即可进入指令模式

在这个模式当中, 可以提供你『搜寻资料』的动作,而读取、存盘、大量取代字符、 离开 vi 、显示行号等动作是在此模式中达成的!

常用操作:

image-20240922153657574

eg. wq! 强制保存退出

系统管理

计算机中,一个正在执行的程序或命令,被叫做“进程”(process)。

启动之后一只存在、常驻内存的进程,一般被称作“服务”(service)

systemctl

1) 基本语法

1
systemctl 	start | stop | restart | status 	服务名 

2) 经验技巧 查看服务的方法:/usr/lib/systemd/system

3) 案例实操

(1)查看防火墙服务的状态

1
systemctl status firewalld 

(2)停止防火墙服务

1
systemctl stop firewalld 

(3)启动防火墙服务

1
systemctl start firewalld 

(4)重启防火墙服务

1
systemctl restart firewalld

systemctl 设置后台服务的自启配置

1)基本语法 systemctl list-unit-files (功能描述:查看服务开机启动状态)

​ systemctl disable service_name (功能描述:关掉指定服务的自动启动)

                      systemctl enable service_name (功能描述:开启指定服务的自动启动) 

2)案例实操

开启/关闭 iptables(防火墙)服务的自动启动

1
2
systemctl enable firewalld.service
systemctl disable firewalld.service

系统运行级别

image-20240925154106339

CentOS7 的运行级别简化为:

multi-user.target 等价于原运行级别 3(多用户有网,无图形界面)

graphical.target 等价于原运行级别 5(多用户有网,有图形界面)

查看当前运行级别:

1
systemctl get-default

修改当前运行级别:

1
systemctl set-default TARGET.target (这里 TARGETmulti-user 或者 graphical)

关闭防火墙

开机启动时关闭防火墙

(1) 查看防火墙开机启动状态 systemctl enable firewalld.service

(2) 设置开机时关闭防火墙 systemctl disable firewalld.service

常用基本命令

​ Shell 可以看作是一个命令解释器,为我们提供了交互式的文本控制台界面。我们可以 通过终端控制台来输入命令,由 shell 进行解释并最终交给内核执行。 本章就将分类介绍 常用的基本 shell 命令。

常用快捷键

ctrl + c 停止进程
ctrl + l 清屏,等同于 clear;彻底清屏是:reset
善于用 tab 键 提示(更重要的是可以防止敲错)
上下键 查找执行过的命令

文件目录类

pwd 显示当前工作目录的绝对路径

image-20240925162930974

ls 列出目录的

ls [选项] [目录或是文件]

image-20240925163041893

cd 切换目录

image-20240925163136386

mkdir 创建一个新的目录

image-20240925163327024

image-20240925163529170

rmdir 删除一个空的目录

要求必须是空的文件夹

image-20240925163744485

touch 创建空文件

image-20240925163828153

cp 复制文件或目录

cp [选项] source dest (功能描述:复制source文件到dest)

image-20240925172528042

rm 删除文件或目录

rm [选项] deleteFile (功能描述:递归删除目录中所有内容)

image-20241007153021862

eg.

image-20241007153312137

mv 移动文件与目录或重命名

(1)mv oldNameFile newNameFile (功能描述:重命名)

(2)mv /temp/movefile /targetFolder (功能描述:移动文件)

image-20241007154826000

cat 查看文件内容

查看文件内容,从第一行开始显示

image-20241007155904352

> 输出重定向和 >> 追加

(1)ls -l > 文件 (功能描述:列表的内容写入文件 a.txt 中(覆盖写))

(2)ls -al >> 文件 (功能描述:列表的内容追加到文件 aa.txt 的末尾)

(3)cat 文件 1 > 文件 2 (功能描述:将文件 1 的内容覆盖到文件 2)

(4)echo “内容” >>

image-20241007161954705

ln 软链接

软链接也称为符号链接,类似于 windows 里的快捷方式,有自己的数据块,主要存放 了链接其他文件的路径。

1)基本语法 ln -s [原文件或目录] [软链接名] (功能描述:给原文件创建一个软链接)

image-20241007162242278

history 查看已经执行过历史命令

时间类

data显示当前时间

cal显示当前日历

用户权限类

useradd 添加新用户

useradd 用户名 (功能描述:添加新用户)

useradd -g 组名 用户名 (功能描述:添加新用户到某个组)

image-20241007170423092

passwd 设置用户密码

passwd 用户名 (功能描述:设置用户密码)

image-20241007170523875

id 查看用户是否存在

id 用户名

su 切换用户

image-20241007170936012

userdel 删除用户

image-20241007171126730

who 查看登录用户信息

image-20241007171321240

sudo 设置普通用户具有 root 权限

image-20241007222756731

usermod 修改用户

usermod -g 用户组 用户名

image-20241007223130004

groupadd 新增组

groupadd 组名

groupdel 删除

groupdel 组名

groupmod 修改组

groupmod -n 新组名 老组名

image-20241007223324848

搜索查找类

find 查找文件或者目录

find 指令将从指定目录向下递归地遍历其各个子目录,将满足条件的文件显示在终端。

find [搜索范围] [选项]

image-20241007225140531

locate 快速定位文件路径(快)

locate 指令利用事先建立的系统中所有文件名称及路径的 locate 数据库实现快速定位给 定的文件。Locate 指令无需遍历整个文件系统,查询速度较快。为了保证查询结果的准确 度,管理员必须定期更新 locate 时刻

locate 搜索文件

注意:由于 locate 指令基于数据库进行查询,所以第一次运行前,必须使用 updatedb 指令创 建 locate 数据库。

压缩和解压类

gzip/gunzip 压缩

gzip 文件 (功能描述:压缩文件,只能将文件压缩为*.gz 文件)

gunzip 文件.gz (功能描述:解压缩文件命令)

注意:

(1)只能压缩文件不能压缩目录

(2)不保留原来的文件

(3)同时多个文件会产生多个压缩包

image-20241007225922203

zip/unzip 压缩

zip [选项] XXX.zip 将要压缩的内容 (功能描述:压缩文件和目录的命令)

unzip [选项] XXX.zip (功能描述:解压缩文件)

image-20241007230144970

image-20241007230222775

tar 打包

tar [选项] XXX.tar.gz 将要打包进去的内容 (功能描述:打包目录,压缩后的 文件格式.tar.gz)

image-20241007230342876

image-20241007230445312

磁盘查看和分区类

du 查看文件和目录占用的磁盘空间

image-20241007231353758

image-20241007233036452

df 查看磁盘空间使用情况

image-20241008103455967

fdisk 分区

image-20241008103737904

image-20241008103747286

进程管理类

进程是正在执行的一个程序或命令,每一个进程都是一个运行的实体,都有自己的地 址空间,并占用一定的系统资源

ps 查看当前系统进程状态

ps aux | grep xxx (功能描述:查看系统中所有进程)

ps -ef | grep xxx (功能描述:可以查看子父进程之间的关系)

注:grep是筛选操作

如果想查看进程的 CPU 占用率和内存占用率,可以使用 aux; 如果想查看进程的父进程 ID 可以使用 ef

image-20241008105344538

image-20241008105417423

image-20241008105425790

kill 终止进程

kill [选项] 进程号 (功能描述:通过进程号杀死进程)

killall 进程名称 (功能描述:通过进程名称杀死进程,也支持通配符,这 在系统因负载过大而变得很慢时很有用)

image-20241008105616048

image-20241008105955743

pstree 查看进程树

pstree [选项]

image-20241008112538492

top 实时监控系统进程状态

top [选项]

image-20241008112857404

image-20241008112903343

image-20241008112913160

image-20241008112931081

image-20241008112936276

image-20241008112947117

image-20241008112953578

netstat 显示网络状态和端口占用信息

netstat -anp | grep 进程号 (功能描述:查看该进程网络信息)

netstat –nlp | grep 端口号 (功能描述:查看网络端口号占用情况)

image-20241008113147744

通过进程号查看sshd进程的网络信息

image-20241008113209875

查看某端口号是否被占用

image-20241008113227169

软件包管理

RPM

RPM(RedHat Package Manager),RedHat软件包管理工具,类似windows里面的setup.exe 是Linux这系列操作系统里面的打包安装工具,它虽然是RedHat的标志,但理念是通用的。

RPM 查询命令(rpm -qa)

rpm -qa (功能描述:查询所安装的所有 rpm 软件包)

由于软件包比较多,一般都会采取过滤。rpm -qa | grep rpm软件包

RPM 卸载命令(rpm -e)

(1)rpm -e RPM软件包 (2) rpm -e –nodeps 软件包

image-20241008114218119

rpm -e –nodeps 软件包 ,可能会导致使用软件包的软件无法正常工作

RPM 安装命令(rpm -ivh)

image-20241008114310861

YUM

YUM(全称为 Yellow dog Updater, Modified)是一个在 Fedora 和 RedHat 以及 CentOS 中的 Shell 前端软件包管理器。基于 RPM 包管理,能够从指定的服务器自动下载 RPM 包 并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装,类似maven

yum [选项] [参数]

image-20241008114428190

image-20241008114434602

eg.采用 yum 方式安装 firefox

image-20241008114519499


Linux的使用
http://example.com/2024/06/12/Linux/
作者
王兴华
发布于
2024年6月12日
许可协议