1-Linux-基础

文章目录

  • Linux基础知识
    • 操作系统基础知识
    • Linux基础知识
      • Linux系统的组成
      • Linux系统图示
      • Linux发行版
  • Linux基础命令
    • Linux系统的目录结构
      • 目录结构对比:windows
      • 路径描述方式
    • Linux命令入门
      • Linux命令通用格式
      • 入门命令示例:ls
    • 目录切换【命令】
    • 路径:相对路径、绝对路径、特殊路径符
      • 相对路径和绝对路径
      • 特殊路径符
    • 创建目录【命令】
    • 文件操作【命令】
      • 文件创建:touch
      • 文件内容查看:cat
      • 文件内容查看:more
      • 文件文件夹复制:cp
      • 文件文件夹移动:mv
      • 文件文件夹删除:rm
    • 查找命令【命令】
      • which:查找命令程序所在的文件地址
      • find:按文件名查找文件
    • grep、wc和管道符
      • grep:过滤
      • wc:统计
      • 管道符:|
    • echo、tail和重定向符
      • echo:终端输出,类似python的print
      • `:将特定字符作为命令,而不仅仅是字符
      • >、>>:重定向符
      • tail:查看文件尾部内容
    • vi/vim编辑器
      • 介绍
      • 命令模式
      • 底线命令模式
  • Linux用户和权限
    • root用户
      • **什么是root用户?**
      • su和exit命令
      • sudo命令
      • 普通用户添加sudo认证
    • 用户、用户组管理
      • 概念
      • 用户组的创建、删除
      • 用户的创建、删除
      • getent命令
    • 查看权限控制信息
    • 修改权限控制
      • chmod命令:修改文件、文件夹的权限信息
      • ch命令:修改文件、文件夹的所属用户和用户组
  • Linux实用操作
    • 快捷键
    • 软件安装
      • CentOs系统:yum
      • Ubuntu系统:apt
    • systemctl命令
    • 软连接
    • 日期、时区
      • 查看时间:date命令
      • 修改时区
      • 时间同步:ntp
    • IP地址、主机名
      • IP地址
      • 主机名
      • 域名解析
      • 虚拟机固定IP地址
    • 网络传输
      • ping命令:检查网络是否通畅
      • wget命令:文件下载器
      • curl命令:发起网络请求
      • 端口
    • 进程管理
      • 什么是进程?
      • 进程操作
    • 主机状态
      • top命令:查看系统资源占用
      • df命令:硬盘信息监控
      • iostat命令:查看CPU、磁盘的相关信息
      • sar命令:网络状态监控
    • 环境变量
      • 什么是环境变量?
      • $、{}:变量取值
      • 自行设置环境变量
    • 上传、下载
      • 远程连接软件的操作交互
      • Linux命令操作交互
    • 压缩、解压
      • 常见压缩格式
      • tar命令
      • zip命令:压缩文件
      • unzip命令:解压缩文件

Linux基础知识

操作系统基础知识

计算机的组成

  • 硬件+软件:

    • 硬件:计算机系统中由电子,机械和光电元件等组成的各种物理装置的总称

    • 软件:用户和计算机硬件之间的接口和桥梁,用户通过软件与计算机进行交流。操作系统是软件的一类

  • **操作系统:**作为用户和计算机硬件之间的桥梁,调度和管理计算机硬件进行工作

Linux基础知识

Linux系统的组成

Linux系统内核+系统级应用程序:

  • Linux系统内核:提供系统最核心的功能,如:调度CPU、调度内存、调度文件系统、调度网络通讯、调度IO等
  • 系统级应用程序:可以理解为出厂自带程序,可供用户快速上手操作系统,如:文件管理器、任务管理器、图片查看、音乐播放等

Linux系统图示

image-20231226103448406

以音乐播放举例,不管是自带的系统程序,亦或者是第三方程序,均是通过调用内核提供的相关功能,由内核调度CPU解码、音响发声等

Linux发行版

  • 提供了内核+系统级程序的完整封装,称之为Linux发行版

  • 市面上常见的Linux发行版:

image-20231226103842600

  • 不同发行版之间的区别:
    • 基础命令100%相同
    • 部分操作有所差异,如:软件安装

Linux基础命令

Linux系统的目录结构

目录结构对比:windows

image-20231226104847557

WindowsLinux
多个盘符没有盘符概念,只有一个根目录/,存储了所有文件
针对某一特定盘符,目录 结构为数形目录结构为树形

路径描述方式

WindowsLinux
D:\data\work\hello.txt/usr/local/hello.txt(开头的斜杠表示根目录,后续的斜杠表示层次关系)

Linux命令入门

Linux命令通用格式

command [- options] [parameter]

  • command:命令本身
  • -options:命令可选项,可不写
  • parameter:命令参数,命令的作用目标

入门命令示例:ls

ls [-a -l -h] [Linux路径]获取Linux路径下的文件及文件夹信息(ls: list directory contents)
无参数以平铺的形式,列出当前工作目录下的内容(默认目录是Home目录:/home/用户名)
-l-list,以列表(竖向排列)的形式展示当前工作目录下的内容,并给出更多信息
-a-all,展示当前工作目录下的所有文件及文件夹(包括隐藏的文件及文件夹)
-h以人类易于阅读的形式,列出文件的大小,如K、M、G(必须搭配-l一起使用,不然没有效果)
-lah命令选项可以直接字符组合,无关顺序
-l -a -h命令选项可以依次调用

隐藏文件及文件夹

  • Linux中默认以“.”开头的文件或文件夹,会自动隐藏
  • 用-a命令选项,可以展示出来

目录切换【命令】

cd [Linux路径]更改当前的工作目录为Linux路径(cd:change directory)
无参数默认回到Home目录作为当前的工作目录

展示当前工作目录的命令:pwd

  • 全称:Print Work Directory
  • 无可选项,无参数

路径:相对路径、绝对路径、特殊路径符

相对路径和绝对路径

示例:当前工作目录为:/home/hmteen,请通过cd命令,切换工作目录到:/home/hmteen/python

解决方案

命令实现解释
cd /home/itheima/Desktop绝对路径写法,以根目录为起点,路径描述以“/”开头
cd Desktop相对路径写法,以当前目录为起点,路径描述不以“/”开头

特殊路径符

作用示例
.表示当前目录cd ./Desktop命令效果同于cd Desktop
表示上一级目录cd .. 回到上一级目录;cd ../.. 回到上两级目录
~表示HOME目录cd ~ 切换到HOME目录

创建目录【命令】

mkdir [-p] Linux路径创建目录
Linux路径可以用相对路径写法,也可以用绝对路径写法
-p表示自动创建不存在的父目录,适用于创建连续多层级的目录

文件操作【命令】

文件创建:touch

touch Linux路径创建文件
Linux路径表示要创建的文件路径。可以用相对路径写法,也可以用绝对路径写法,也可以用特殊路径符

文件内容查看:cat

cat Linux路径查看文件内容
Linux路径表示被查看文件的路径。可以用相对路径写法,也可以用绝对路径写法,也可以用特殊路径符

文件内容查看:more

cat Linux路径查看文件内容
Linux路径表示被查看文件的路径。可以用相对路径写法,也可以用绝对路径写法,也可以用特殊路径符

与cat命令的区别:

  • cat命令将内容全部显示出来
  • more支持翻页。文件内容过多,可以一页一页展示
    • 空格翻页
    • 键盘输入q 退出查看

文件文件夹复制:cp

cp [-r] 参数1 参数2复制文件文件夹
参数1一个Linux路径,表示被复制的文件或文件夹
参数2一个Linux路径,表示要复制去的地方

文件文件夹移动:mv

mv 参数1 参数2移动文件文件夹
参数1一个Linux路径,表示被移动的文件或文件夹
参数2一个Linux路径,表示要移动去的地方。如果目标不存在,则进行改名,确保目标存在

文件文件夹删除:rm

rm [-r -f ] 参数1 参数2 … 参数N删除文件文件夹
-fforce,强制删除(不会弹出提示确认信息)
-r用于删除文件夹
参数1 参数2 参数N一个Linux路径,表示要删除的文件或文件夹,按照空格隔开

参数通配符:*

  • test*:表示匹配任何以test开头的内容
  • *test:表示匹配任何以test结尾的内容
  • *test*:表示匹配任何包含test的内容

查找命令【命令】

which:查找命令程序所在的文件地址

Linux命令,本体就是一个个的二进制可执行程序,即.exe可执行文件,有存放地址

which 参数查找命令程序所在的文件地址
参数带查找的命令,如:cd、pwd、touch、cp、mv等

find:按文件名查找文件

find 参数1 []查找文件
参数1起始路径,表示查找该路径及其子路径下的特定文件。支持绝对路径、
-name “参数2”以文件名字形式查找文件。参数2:待查找的文件名,支持通配符*
-size +|-n[KMG]以文件大小形式查找文件。+、-:表示文件大于或小于某个值;k-kb、M-MB、G-GB

grep、wc和管道符

grep:过滤

grep [-n] 关键字 文件路径过滤文件行
-n显示匹配的行的行号
关键字要过滤的内容,带有空格或其他特殊字符,建议用""包裹起来
文件路径要过滤内容的文件路径,支持绝对路径、相对路径

wc:统计

wc [-c -m -l -w] 文件路径过滤文件行
-c统计bytes数量
-m统计字符数量
-l统计行数
-w统计单词数量
无可选项默认统计:行数、单词数、字节数
文件路径被统计的文件的路径,支持绝对路径、相对路径

管道符:|

**作用:**将管道符左边命令的结果,作为右边命令的输入

示例:

// 将itheima.txt的文件内容,进行gerp命令的过滤,过滤关键字“itheima”
cat itheima.txt | grep "itheima" 

// 过滤ls的结果
ls | grep "Desktop"

// 过滤结果,只找路径带有/usr/lib64的结果
find / -name "test" | grep "/usr/lib64"

// 管道符的嵌套使用
// - cat itheima.txt的结果给 grep itcast 使用
// - cat itheima.txt | grep itcast 的结果给 grep itheima使用

cat itheima.txt | grep itcast | grep itheima

echo、tail和重定向符

echo:终端输出,类似python的print

echo 输出的内容输出内容到终端
输出的内容用”“包围

`:将特定字符作为命令,而不仅仅是字符

// 打印结果就是pwd
echo pwd

// 打印结果是pwd命令执行的结果,即当前的工作路径
echo `pwd`

>、>>:重定向符

  • > 将左侧命令的结果,覆盖写入到符号右侧指定的文件中
  • >> 将左侧命令的记过,追加写入到符号右侧指定的文件中
echo “Hello Linux” > itheima.txt
// txt文件中只剩一行内容:Hello Linux

echo “Hello itheima” > itheima.txt
// 再次执行,覆盖新内容,txt文件中现在的内容:Hello itheima

echo “Hello itcast” >> itheima.txt
// 再次执行,追加新内容(自动换行),txt文件中现在的内容:
Hello itheima
Hello itcast

tail:查看文件尾部内容

tail [-f -num] Linux路径查看文件尾部内容
-f表示持续跟踪
-num表示看尾部多少行,默认10行
Linux路径待查看文件的路径

vi/vim编辑器

介绍

vi\vim是visual interface的简称,是Linux中最经典的文本编辑器同图形化界面中的 文本编辑器一样

  • vi是命令行下对文本文件进行编辑的绝佳选择

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

三种工作模式

image-20231226155237926

工作模式特点
命令模式敲的任何按键编辑器都理解为命令,以命令驱动执行不同的功能。 此模型下,不能自由进行文本编辑
输入模式即编辑模式、插入模式。 此模式下,可以对文件内容进行自由编辑
底线命令模式以:开始,通常用于文件的保存、退出

命令模式

vim 文件路径编辑文件
  • 如果文件路径下的文件不存在,此命令用于编辑新文件
  • 如果文件路径下的文件存在,此命令用于编辑已有文件

常用命令快捷键

image-20231226161850354

image-20231226161900492

底线命令模式

image-20231226160210821

Linux用户和权限

root用户

什么是root用户?

超级管理员,root用户拥有最大的系统操作权限。

普通用户在根目录下创建文件夹会失败,切换到root用户,就可以了

su和exit命令

su命令可以切换当前用户到root用户;exit命令可以退出root用户

su [-] [用户名]切换用户
-表示切换之后加载环境变量
用户名用户名字,不需要加引号
exit退出当前用户
当前是root用户退出到普通用户
当前是普通用户断开连接

sudo命令

不建议长期切换到root用户进行操作,避免对系统造成损坏

通过sudo命令,可以临时给普通用户,授予root权限

sudo 命令给予root权限,执行当前命令

普通用户添加sudo认证

并非所有用户,都有权力使用sudo命令,没有权限的普通用户,需要添加认证,使其具备使用资格

  • 切换到root用户,执行visudo命令(该命令会自动通过vi编辑器打开:/etc/sudoers)
  • 在文件最后一行添加如下内容:
自己的用户名 ALL=(ALL)	NOPASSWD: ALL

// xx空格xx制表符Tabxx:空格xx 
  • 通过wq命令保存
  • 切换到普通用户,执行sudo命令

用户、用户组管理

概念

image-20231227093517175

Linux系统中,可以:

  • 配置多个用户
  • 配置多个用户组
  • 用户可以加入多个用户组里面

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

  • 针对用户的权限控制
  • 针对用户组的权限控制

用户组的创建、删除

以下命令需要root用户执行

命令作用
groupadd 用户组名创建用户组
groupdel 用户组名删除用户组

用户的创建、删除

以下命令需要root用户执行

创建用户

useradd [-g -d] 用户名创建用户
-g指定该用户的分组。不指定,默认会创建一个跟用户名一样的组;若同名的组已存在,则必须使用-g指定特定的用户组
-d指定用户的HOME路径。不指定默认为:/home/用户名
useradd test  <==>	useradd -g test -d /home/test

删除用户

userdel [-r] 用户名删除用户
-r删除用户的HOME目录。不使用该选项,删除用户的时候,HOME目录会保留

查看用户

id [用户名]查看用户
用户名被查看的用户,不提供就查看自身

修改用户所属组

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

getent命令

getent passwd查看当前系统中有哪些用户
// 所列每个用户的信息组成:
用户名:密码(x):用户ID:组ID:描述信息(无用):HOME目录:执行终端(默认bash)
getent group查看当前系统中有哪些用户组
// 所列每个用户组的信息组成:
组名称:组认证(显示为x):组ID

查看权限控制信息

[hmteen@localhost ~]$ ls -l
total 4
drwxr-xr-x. 2 hmteen hmteen   6 Jun 29 00:20 Desktop
-rw-rw-r--. 1 hmteen hmteen 133 Dec 25 23:40 hello.txt
drwxr-xr-x. 2 hmteen hmteen   6 Jun 29 00:20 下载
drwxr-xr-x. 2 hmteen hmteen   6 Jun 29 00:20 公共
drwxr-xr-x. 2 hmteen hmteen   6 Jun 29 00:20 图片
drwxr-xr-x. 2 hmteen hmteen   6 Jun 29 00:20 文档
drwxr-xr-x. 2 hmteen hmteen   6 Jun 29 00:20 桌面
drwxr-xr-x. 2 hmteen hmteen   6 Jun 29 00:20 模板
drwxr-xr-x. 2 hmteen hmteen   6 Jun 29 00:20 视频
drwxr-xr-x. 2 hmteen hmteen   6 Jun 29 00:20 音乐

<    1    >   < 2  > < 3  >
  • 分组1:drwxr-xr-x:表示文件、文件夹的权限控制信息
  • 分组2:hmteen:表示文件、文件夹所属的用户
  • 分组3:hmteen:表示文件、文件夹所属的用户组

image-20231227101437478

权限含义解释
r读权限针对文件:表示可以查看文件内容
针对文件夹:表示可以通过ls命令查看文件夹内容
w写权限针对文件:表示可以修改此文件
针对文件夹:表示可以在文件夹内进行:创建、删除、改名等操作
x执行权限针对文件:表示可以将文件作为执行程序
针对文件夹:表示可以更改工作目录到此文件夹,即cd命令

修改权限控制

chmod命令:修改文件、文件夹的权限信息

只有该文件、文件夹的所属用户或者root用户,具备修改权限

chmod [-R] 权限 文件或文件夹路径修改文件、文件夹的权限信息
-R对文件夹内的全部内容应用同样的操作

示例

chmod u=rwx,g=rx,o=x hello.txt

chmod -R u=rwx,g=rx,o=x test

chmod 751 hello.txt  (!!!)

权限的数字符号

编号权限指代
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

ch命令:修改文件、文件夹的所属用户和用户组

只有该文件、文件夹的所属用户或者root用户,具备修改权限

chown [-R] [用户] [:] [用户组] 文件或文件夹路径修改文件、文件夹的所属用户和用户组
-R对文件夹内的全部内容应用同样的操作
用户修改所属用户
用户组修改所属用户组别
:分割作用

示例

chown root hello.txt
将hello.txt所属用户修改为root

chown :root hello.txt
将hello.txt所属用户组修改为root

chown root:itheima hello.txt
将hello.txt所属用户修改为root,用户组修改为itheima

chown -R root test
将文件夹test的所属用户修改为root并对文件夹内全部内容应用同样规则
  • 对所属用户组有操作,需要用到冒号
  • 仅对所属用户有操作,不需要写冒号

Linux实用操作

快捷键

快捷键功能
ctrl+c程序强制终止;命令输入强制清空
ctrl+d退出账户的登录;退出某些程序的专属页面,如:Python
history命令查看历史输入过的命令
ctrl + a跳到命令开头
ctrl + e跳到命令结尾
ctrl + 键盘左键向左跳一个单词
ctrl + 键盘右键向右跳一个单词
ctrl + l 或者 clear命令清屏

软件安装

CentOs系统:yum

yum命令需要root权限

yum [-y] [install | remove | search] 软件名称软件安装、卸载、搜索
-y自动确认,无需手动确认安装或卸载
install安装软件
remove卸载软件
search搜索软件

Ubuntu系统:apt

apt命令同样需要root权限

apt [-y] [install | remove | search] 软件名称软件安装、卸载、搜索
-y自动确认,无需手动确认安装或卸载
install安装软件
remove卸载软件
search搜索软件

systemctl命令

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

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

systemctl start | stop | status | enable | disable 服务名控制服务行为
start启动服务
stop关闭服务
status查看状态
enable开启开机自启
disable关闭开机自启

软连接

类似Windows系统的《快捷方式》:只是一个指向,并不是物理移动

ln -s 参数1 参数2给文件、文件夹创建软连接
-s创建软连接
参数1被链接的文件或文件夹
参数2要链接去的目的地

日期、时区

查看时间:date命令

date [-d] [+格式化字符串]查看时间
-d用于日期计算
+格式化字符串自定义日期显示方式

-d选项

命令含义
date -d “+1 day”显示后一天的日期
date -d “-1 day”显示前一天的日期
date -d “+1 month”显示下一月的日期
date -d “-1 month”显示上一月的日期
date -d “+1 year”显示下一年的日期
date -d “-1 year”显示上一年的日期

格式化字符串

符号含义
%Y
%y年份后两位数字
%m月份
%d
%H小时
%M分钟
%S
%s自 1970-01-01 00:00:00 UTC 到现在的秒数

修改时区

  • 将系统自带的localtime文件删除:sudo rm -f /etc/localtime
  • 修改时间:sudo ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

时间同步:ntp

安装程序,系统自启动服务校准

yum -y install ntp

systemctl start ntpd
systemctl enable ntpd

手动校准

ntpdate -u ntp.aliyun.com
// 需要root权限

IP地址、主机名

IP地址

每一台联网的电脑都会有一个地址,用于和其它计算机进行通讯

  • IP地址主要有2个版本:V4版本和V6版本
  • IPv4版本的地址格式是:a.b.c.d,其中abcd表示0~255的数字

Linux查看本机ip地址

ifconfig

若无法执行该命令,可安装:yum -y install net-tools

一些特殊的ip地址

127.0.0.1:这个IP地址用于指代本机

0.0.0.0:

  • 可以指代本机
  • 可以在端口绑定中确定绑定关系
  • 在IP限制规则里面,表示放行所有IP

主机名

每一台电脑除了对外联络地址(IP地址)以外,也可以有一个名字,称之为主机名

Linux中关于主机名的操作

hostname
// 查看主机名

hostnamectl set-hostname 主机名
// 修改主机名(需要root权限)

域名解析

IP地址难以记忆,可以通过字符化的地址去访问服务器(域名)

域名和IP地址之间的对应关系,需要进行域名解析

image-20231227160708363

虚拟机固定IP地址

为什么要固定IP?

当前我们虚拟机的Linux操作系统,其IP地址是通过DHCP服务获取的

  • DHCP:动态获取IP地址,即每次重启设备后都会获取一次,可能导致IP地址频繁变更

远程连接到Linux系统,若不固定IP,需要频繁变更配置文件来适配

固定IP的步骤

  • 若Linux系统安装在虚拟机上,先配置IP地址网关和网段(IP地址的范围)
  • 在Linux系统中手动修改配置文件,固定IP(固定具体的IP地址)

网络传输

ping命令:检查网络是否通畅

ping [-c num] ip或主机名
-c num设置检查次数,不设置将一直检查
ip或主机名被检查的服务器的ip地址或主机名地址

wget命令:文件下载器

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

wget [-b] url
-b后台下载,将日志写入当前工作目录的wget-log文件中
url下载链接

curl命令:发起网络请求

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

curl [-0] url
-0用于下载文件,当url是下载链接时,可以通过此选项保存文件
url要发起请求的网络地址

端口

什么是端口?

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

  • 物理端口:又可称之为接口,是可见的端口,如USB接口,RJ45网口,HDMI端口等
  • 虚拟端口:是指计算机内部的端口,是不可见的,是用来操作系统和外部进行交互使用的

Linux中的端口

Linux系统是一个超大号小区,可以支持65535个端口,这6万多个端口分为3类进行使用:

  • 公认端口:1~1023,通常用于一些系统内置或知名程序的预留使用,如SSH服务的22端口,HTTPS服务的443端口非特殊需要,不要占用这个范围的端口
  • 注册端口:1024~49151,通常可以随意使用,用于松散的绑定一些程序\服务
  • 动态端口:49152~65535,通常不会固定绑定程序,而是当程序对外进行网络链接时,用于临时使用

查看端口占用情况

// 安装nmap
yum -y install nmap

// 查看指定IP地址的对外暴露端口
nmap 被查看的ip地址

// 查看具体端口的被占用情况,若无法用该命令:yum -y install net-tools
netstat -anp | grep 端口号

// 结果分析:
// 22端口被绑定到0.0.0.0这个IP地址上,表示允许所有ip访问(外部ip)
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      -

进程管理

什么是进程?

程序运行在操作系统中,是被操作系统所管理的

为管理运行的程序,每一个程序在运行的时候,便被操作系统注册为系统中的一个:进程。并会为每一个进程都分配一个独有的:进程ID(进程号)

进程操作

查看进程

ps [-e -f]查看Linux中的进程信息(一般两个选项,都带上)
-e显示全部进程
-f展示进程的全部信息
UID         PID   PPID  C STIME TTY          TIME CMD
root          1      0  0 09:37 ?        00:00:02 /usr/lib/systemd/systemd --switched-root --sy
root          2      0  0 09:37 ?        00:00:00 [kthreadd]
名词解释
UID进程所属的用户ID
PID进程的进程号ID
PPID进程的父ID(启动此进程的其它进程)
C此进程的CPU占用率(百分比)
STIME进程的启动时间
TTY启动此进程的终端序号,如显示?,表示非终端启动
TIME进程占用CPU的时间
CMD进程对应的名称或启动路径或启动命令

查看指定进程

ps -ef | grep tail
// 精确找到tail命令的信息

关闭进程

kill [-9] 进程ID关闭进程
-9强制关闭进程
进程ID进程的ID

主机状态

top命令:查看系统资源占用

top [-p -d -c -n -b -i -u]查看系统资源占用
选项以后再了解

命令执行结果解析

image-20231227173150911

// 第一行结果
top:命令名称,14:36:57:当前系统时间,up 3 min:启动了3分钟,2 users:2个用户登录,load:1、5、15分钟负载

// 第二行结果
Tasks:179个进程,2 running:2个进程子在运行,177 sleeping:174个进程睡眠,0个停止进程,0个僵尸进程

// 第三行结果
%Cpu(s):CPU使用率,us:用户CPU使用率,sy:系统CPU使用率,ni:高优先级进程占用CPU时间百分比,id:空闲CPU率,wa:IO等待CPU占用率,hi:CPU硬件中断率,si:CPU软件中断率,st:强制等待占用CPU率

// 第四行结果
Kib Mem:物理内存,total:总量,free:空闲,used:使用,buff/cache:buff和cache占用

// 第五行结果
KibSwap:虚拟内存(交换空间),total:总量,free:空闲,used:使用,buff/cache:buff和cache占用
名词解释
PID进程id
USER进程所属用户
PR进程优先级,越小越高
NI负值表示高优先级,正表示低优先级
VIRT进程使用虚拟内存,单位KB
RES进程使用物理内存,单位KB
SHR进程使用共享内存,单位KB
S进程状态(S休眠,R运行,Z僵死状态,N负数优先级,I空闲状态)
%CPU进程占用CPU率
%MEM进程占用内存率
TIME+进程使用CPU时间总计,单位10毫秒
COMMAND进程的命令或名称或程序文件路径

df命令:硬盘信息监控

df [-h]磁盘信息监控
-h以更加人性化的单位显示

iostat命令:查看CPU、磁盘的相关信息

iostat [-x] [num1] [num2]查看CPU、磁盘的相关信息
-x显示更多信息
num1数字,刷新间隔
num2数字,刷新次数

sar命令:网络状态监控

sar -n DEV num1 num2网络状态监控
-n DEV查看网络接口
num1刷新间隔(不填就查看一次结束)
num2查看次数(不填就无限次数)

环境变量

什么是环境变量?

环境变量是操作系统(Windows、Linux、Mac)在运行的时候,记录的一些关键性信息,用以辅助系统运行

可以用env命令查看当前系统中记录的环境变量

env
// 查询很多信息

env | grep PATH
// 将环境变量筛选出来:PATH=/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/hmteen/.local/bin:/home/hmteen/bin
// : 分割每一个环境变量

$、{}:变量取值

echo $PATH
// 获取PATH变量里面的值:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/hmteen/.local/bin:/home/hmteen/bin

echo ${PATH}ABC
// 取PATH变量的值,并在后边缀上ABC

自行设置环境变量

临时设置

永久设置

上传、下载

远程连接软件的操作交互

直接通过远程连接软件提供的界面,进行操作交互

Linux命令操作交互

以下命令要实现,需要终端软件支持才可以。FinalShell、SecureCRT、XShell等均支持

// 安装相关软件
yum -y install lrzsz

// 文件上传,输入以下命令
rz

// 文件下载,默认下载到:桌面/fsdownload/
sz 要下载的文件

压缩、解压

常见压缩格式

压缩格式适配系统
zipLinux、Windows、MacOS(常用)
7zipWindows系统常用
rarWindows系统常用
tarLinux、MacOS常用
gzipLinux、MacOS常用

tar命令

tar [-c -v -x -f -z -C] 参数1 参数2 … 参数N
-c创建压缩文件,用于压缩模式
-v显示压缩、解压过程,用于查看进度
-x解压模式
-f要压缩(或解压)的文件,该选项必须在所有选项的最后边
-zgzip模式,不使用该选项就是普通的tarball格式
-C选择要解压的目的地,用于解压模式
参数1…N待处理的文件
tar -cvf test.tar 1.txt 2.txt 3.txt
// 将1.txt、2.txt、3.txt 压缩到test.tar文件内

tar -zcvf test.tar.gz 1.txt 2.txt 3.txt
// 将1.txt、2.txt、3.txt 压缩到test.tar.gz文件内,使用gzip模式

zip命令:压缩文件

zip [-r] 参数1 参数2 … 参数N
-r被压缩的包含文件夹的时候,需要用该选项。和rm、cp命令中的一样
zip test.zip a.txt b.txt c.txt
// 将a.txt b.txt c.txt 压缩到test.zip文件内

zip -r test.zip test itheima a.txt
// 将test、itheima两个文件夹和a.txt文件,压缩到test.zip文件内

unzip命令:解压缩文件

unzip [-d] 参数
-d指定要解压到的位置
参数被解压的zip压缩包文件
unzip test.zip
// 将test.zip解压到当前目录

unzip test.zip -d /home/itheima
// 将test.zip解压到指定文件夹内(/home/itheima)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/283833.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

11 HAL库的硬件I2C驱动SI7006和AP3216C

引言&#xff1a; 本片文章想给大家分享一下使用HAL库驱动SI7006和AP3216C&#xff0c; 这两款常见的芯片的手册会在文章的末尾提供给大家。 一、SI7006和AP3216C简介 SI7006 SI7006是一款数字湿度和温度传感器&#xff0c;由Silicon Labs&#xff08;全称Silicon Laboratories…

C语言之scanf浅析

前言&#xff1a; 当有了变量&#xff0c;我们需要给变量输入值就可以使用scanf函数&#xff0c;如果需要将变量的值输出在屏幕上的时候可以使用printf函数&#xff0c;如&#xff1a; #include <stdio.h> int main() {int score 0;printf("请输⼊成绩:");sc…

数据结构——红黑树 and B-树

红黑树 根据平衡条件第4、5两点 最短路径&#xff0c;都是黑色 最长路径&#xff0c;红黑相间 最长是最短的两倍 B-树

webpack的深入学习与实战(持续更新)

一、何为Webpack Webpack是 一个开源的JavaScript模块打包工具&#xff0c;其最核心的功能是解决模块之间的依赖&#xff0c;把各个模块按照特定的规则和顺序组织在一起&#xff0c;最终合并为一个JS文件或多个。 二、带宽的换算 目前我们的云服务器带宽为5M 三 、bundle 体…

小白入门java基础-注解

一&#xff1a;介绍 Java 是由 Sun Microsystems 公司于 1995 年 5 月推出的高级程序设计语言。 Java 可运行于多个平台&#xff0c;如 Windows, Mac OS 及其他多种 UNIX 版本的系统。Java语言编写的程序&#xff0c;在一次编译后&#xff0c;可以在多个系统平台上运行。 主…

一元函数微分学——刷题(8

目录 1.题目&#xff1a;2.解题思路和步骤&#xff1a;3.总结&#xff1a;小结&#xff1a; 1.题目&#xff1a; 2.解题思路和步骤&#xff1a; 先看A&#xff0c;既然存在&#xff0c;那么f(x)和x属于同阶无穷小&#xff0c;所以f(0)0&#xff0c;没问题 再看C&#xff0c;结…

数据结构,题目笔记

哈希表 线性探测再散列 【算法数据结构&#xff5c;哈希查找&#xff5c;哈希冲突&#xff5c;除留余数法&#xff5c;线形探测法&#xff5c;例题讲解】https://www.bilibili.com/video/BV1514y1P7BK?vd_source1a684a3a1b9d05485b3d6277aeeb705d 【二次探测再散列法】 【【…

从入门到精通,30天带你学会C++【第十天:猜数游戏】

目录 Everyday English 前言 实战1——猜数游戏 综合指标 游玩方法 代码实现 最终代码 试玩时间 必胜策略 具体演示 结尾 Everyday English All good things come to those who wait. 时间不负有心人 前言 今天是2024年的第一天&#xff0c;新一年&#xff0c;新…

linux休眠机制介绍

一、概述 Linux系统提供了休眠和低功耗模式&#xff0c;可以帮助节省电力和延长电池寿命&#xff0c;休眠对应的另外一种模式就是唤醒。 二、常用的休眠方式 常用的休眠方式有freeze,standby, mem, disk&#xff0c;hibernate freeze: 冻结所有的进程&#xff0c;包括用户空…

中小微医院机构云服务(云HIS)平台源码

云HIS&#xff08;Cloud-Based Healthcare Information System&#xff09;重新定义了HIS&#xff0c;目标是为中小型医疗卫生机构提供优质经济的医疗卫生信息化产品及服务&#xff1b;是以健康档案为主线、以电子病历为核心、以云计算技术为基础的医疗卫生系统。云HIS作为基于…

C# 如何读取Excel文件

当处理Excel文件时&#xff0c;从中读取数据是一个常见的需求。通过读取Excel数据&#xff0c;可以获取电子表格中包含的信息&#xff0c;并在其他应用程序或编程环境中使用这些数据进行进一步的处理和分析。本文将分享一个使用免费库来实现C#中读取Excel数据的方法。具体如下&…

你逛过凌晨四点的校园吗?--大四毕业生的年终总结

前言&#xff1a; Hello大家好&#xff0c;我是Dream。 又是一年的年终总结&#xff0c;我也迎来了自己的毕业季&#xff0c;没错&#xff0c;我马上要毕业啦&#xff01;不知道大家是什么时候认识我的呢&#xff0c;又或者是第一次发现我~这一年&#xff0c;迎接过朝阳、拍下过…

springboot 接收appsflyer 参数

1、官网登陆&#xff1a;hq1.appsflyer.com a、配置接收请求的地址和需要的事件 配置详情 2、Controller配置接收 RequestMapping(value "/req", method POST)ResponseBodypublic ResData req(RequestBody Map<String, String> map) {String jsonObject J…

Swift 周报 第三十四期

文章目录 前言新闻和社区iPhone Pro 要提价&#xff01;新款 iPhone 或会使用 USB-C 充电器&#xff0c;边框更薄与 App Store 专家会面交流让你的 App 和游戏在 visionOS 模拟器外更进一步 提案通过的提案正在审查的提案 Swift论坛推荐博文话题讨论关于我们 前言 本期是 Swif…

C语言之分支与循环【附6个练习】

文章目录 前言一、什么是语句&#xff1f;1.1 表达式语句1.2 函数调用语句1.3 控制语句1.4 复合语句1.5 空语句 二、分支语句&#xff08;选择结构&#xff09;2.1 if语句2.1.1 悬空else2.1.2 练习&#xff08;1. 判断一个数是否为奇数 2. 输出1-100之间的奇数&#xff09; 2.2…

深入理解Java虚拟机系列 - 总结

深入理解Java虚拟机系列 - 总结 前言一. JVM 内存模型和 Java 对象模型1.1 JVM 内存模型包括哪些&#xff1f;作用分别是&#xff1f;1.2 JVM 内存模型中的各个区域的特点&#xff1f;1.3 对象分配内存的方式有哪些&#xff1f;1.4 对象的内存布局是怎样的&#xff1f;① 对象头…

手摸手系列之SpringBoot+Vue2项目整合高德地图实现车辆实时定位功能

前言 最近在做一个物流内陆运输的项目&#xff0c;其中的一个关键功能是根据车辆的GPS数据在页面上实时显示车辆位置信息。由于我们已经获得了第三方提供的GPS数据&#xff0c;所以接下来的任务是将这些数据整合到我们的系统中&#xff0c;并利用高德地图API来展示车辆的实时位…

【数据结构】栈【详解】

目录 栈的定义&#xff1a; 栈的声明与定义&#xff1a; 头文件的包含&#xff1a; 对栈的基本操作&#xff1a; 栈的初始化&#xff1a; 摧毁栈: 入栈&#xff1a; ​编辑 出栈&#xff1a; ​编辑 输出栈顶位置&#xff1a; 输出栈的当前大小&#xff1a; 判空操…

小兔鲜儿 uniapp - 购物车模块

目录 加入购物车​ 接口相关​ 购物车列表​ 静态结构​ 登录状态​ 列表渲染​ 删除购物车 接口相关​ 参考代码 修改商品信息​ 接口相关​ ​修改商品数量​ 修改商品选中/全选​ 底部结算信息​ 计算总钱数(总金额)​ 带返回按钮的购物车​ 完成加入购物车…