04-Linux实用操作

news2024/9/23 23:31:33

各种小技巧(快捷键)

强制停止

Ctrl+c强制停止

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

image-20240202151455100

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

image-20240202151523849

退出、登出

Ctrl+d退出登出

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

image-20240202151841002

  • 或者退出某些特定程序的专属页面(不能退出vi/vim)

image-20240202152106795

历史命令搜索

history命令,查看历史输入过的命令

image-20240202152633279

可以使用grep|过滤命令

image-20240202153002407

可以通过:!命令前缀,自动执行上一次匹配前缀的命令(不要搜索很久之前的,不一定能命中)

image-20240202153314980

  • 可以通过快捷键Ctrl+r,输入内容去匹配历史命令

image-20240202155334425

如果搜索到的内容是你需要的,那么:

  • 回车键可以直接执行
  • 键盘左右键,可以得到此命令(不执行)

光标移动

  • ctrl+a,跳到命令开头
  • ctrl+e,跳到命令结尾
  • ctrl+键盘左键,向左跳一个单词
  • ctrl+键盘右键,向右跳一个单词

清屏

  • ctrl+l快捷键,清空终端内容
  • clear命令,清空终端内容

软件安装

yum命令

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

语法:

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

注意:

yum命令需要root权限,可以su切换到root,或使用sudo提权

yum命令需要联网

通过yum命令安装wget程序

yum [-y] install wget

image-20240219085446172

使用yum命令卸载wget程序

yum [-y] remove wget

image-20240219085610325

通过yum命令,搜索是否有wget安装包

yum search wget

image-20240219090549865

在Ubuntu系统中,使用apt命令联网管理软件安装

语法

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

示例

image-20240219095755065

systemctl

systemctl命令

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

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

语法

systemctl start | stop | status | enable | disable 服务名
  • start 启动

  • stop 关闭

  • status 查看状态

  • enable 开启开机自启

  • disable 关闭开机自启

系统内置的服务比较多,比如:

  • NetworkManager,主网络服务
  • network,副网络服务
  • firewalld,防火墙服务
  • sshdssh服务(FinalShell远程登录Linux使用的就是这个服务)

除了内置的服务外,部分第三方软件安装后也可以以systemctl进行控制

  • 安装ntp软件
yum install -y ntp

可以通过ntpd服务器名,配合systemctl进行控制

  • 安装apache服务器软件
yum install -y httpd

image-20240219172856816

可以通过httpd服务名,配合systemctl进行控制

image-20240219172931878

部分软件安装后没有自动集成到systemctl中,可以手动添加

软连接

ln命令创建软连接

在系统中创建软连接,可以将文件、文件夹链接到其他位置

类似于Windows系统中的《快捷方式》

语法

ln -s 参数1 参数2
  • -s选项,创建软链接
  • 参数1,被链接的文件或文件夹
  • 参数2,要链接去的目的地

实例

ln -s /etc/yum.conf ~/yum.conf
ln -s /etc/yum ~/yum

image-20240219203437657

日期、时区

date命令

通过date命令可以在命令中查看系统的时间

语法

date [-d] [+格式化字符串]
  • -d按照给定的字符串显示日期,一般用于日期计算
  • 格式化字符串: 通过特定的字符串标记,来控制显示的日期格式
    • %Y
    • %y 年份后两位数字(00…99)
    • %m 月份(01…12)
    • %d 日(01…31)
    • %H 小时(00…23)
    • %M 分钟(00…59)
    • %S 秒(00…59)
    • %s1970-01-01 00:00:00到现在的秒数
[root@localhost ~]# date +%Y-%m-%d %H:%M:%S
date: 额外的操作数 "%H:%M:%S"
Try 'date --help' for more information.
[root@localhost ~]# date "+%Y-%m-%d %H:%M:%S"
2024-02-20 16:23:39
[root@localhost ~]# date +%Y-%m-%d
2024-02-20
[root@localhost ~]# date
2024年 02月 20日 星期二 16:24:11 CST
[root@localhost ~]# date +%s
1708417848

注意

如果中间带有空格,需要用""将其括起来作为字符串

date命令进行日期加减

  • -d按照给定的字符串显示日期,一般用于日期计算
  • 其中支持的时间标记为:
    • year
    • month
    • day
    • hour小时
    • minute分钟
    • second
  • -d选项可以和格式化字符串配合使用

示例

[root@localhost ~]# date -d "+1 month" +%Y-%m-%d
2024-03-20
[root@localhost ~]# date -d "+1 year" +%Y-%m-%d
2025-02-20
[root@localhost ~]# date -d "+1 day" +%Y-%m-%d
2024-02-21
[root@localhost ~]# date -d "+10 hour" "+%Y-%m-%d %H:%M:%S"
2024-02-21 02:43:04
[root@localhost ~]# date -d "+10 minute" "+%Y-%m-%d %H:%M:%S"
2024-02-20 16:53:26
[root@localhost ~]# date -d "+10 second" "+%Y-%m-%d %H:%M:%S"
2024-02-20 16:43:48

修改Linux时区

若在安装Linux系统的时候没有配置时区,则系统默认的时区是非中国的东八区

使用root权限,执行如下命令,修改时区为东八区时区

rm -f /etc/localtime
sudo ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

将系统自带的localtime文件删除,并将/usr/share/zoneinfo/Asia/Shanghai文件链接为localtime文件即可

ntp程序

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

安装ntp

yum -y install ntp

image-20240222100344951

启动并设置为开机自启

systemctl start ntpd
systemctl enable ntpd

示例

[root@localhost ~]# systemctl start ntpd
[root@localhost ~]# systemctl enable ntpd
Created symlink from /etc/systemd/system/multi-user.target.wants/ntpd.service to /usr/lib/systemd/system/ntpd.service.

ntpd程序启动后会定期自动联网校准系统的时间

可以手动校准(需要root权限

ntpdate -u ntp.aliyun.com

通过阿里云提供的服务网址配合ntpdate命令自动校准

示例

[root@localhost ~]# ntpdate -u ntp.aliyun.com
22 Feb 10:06:15 ntpdate[1463]: adjust time server 203.107.6.88 offset 0.008430 sec

IP地址、主机名

IP地址

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

IP地址分为IPv4和IPv6,IPv4共有232个,目前IPv4已经全部分配完毕,IPv6共有2128个。

IPv4以点分十进制表示

在Windows中使用ipconfig查看本地的IP地址

在Linux中使用ifconfig查看IP地址,如果无法使用该命令,则需要安装net-tools

yum -y install net-tools

Linux查看IP地址示例

[root@localhost ~]# ifconfig
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.149.130  netmask 255.255.255.0  broadcast 192.168.149.255
        inet6 fe80::c6ae:2dbf:f28e:ba40  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:b6:40:29  txqueuelen 1000  (Ethernet)
        RX packets 19902  bytes 28361095 (27.0 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 5766  bytes 381741 (372.7 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 64  bytes 5568 (5.4 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 64  bytes 5568 (5.4 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

主网卡:ens33,可以看到IP地址为192.168.149.130

本地回环网卡:lo

  • 0.0.0.0特殊IP地址
    • 可以用于只带本机
    • 可以在端口绑定中用来确定绑定关系
    • 在一些IP地址限制中,表示所有IP的意思,如放行规则设置为0.0.0.0,表示允许任意IP访问

主机名

无论是Windows、Linux都可以给系统设置主机名,在Linux系统中使用hostname设置主机名

[root@localhost ~]# hostname bowen
[root@localhost ~]# hostname
bowen
[root@localhost ~]# bash
[root@bowen ~]# 

使用另一种命令修改主机名(需要root权限)

hostnamectl set-hostname 主机名

修改完后使用bash启动一个新的bash shell

域名解析

访问www.baidu.com的流程如下

image-20240222113010451

即:

  • 先查看本机的记录(私人地址本)
    • Windows:‪C:\Windows\System32\drivers\etc\hosts
    • Linux:/etc/hosts
  • 再联网去DNS服务器(如114.114.114.114,8.8.8.8)询问

配置主机映射

Xshell通过IP地址连接到虚拟机中Linux服务器的,将其更改为通过域名(主机名)连接

使用记事本打开‪C:\Windows\System32\drivers\etc\hosts文件,在该文件中配置即可

image-20240222113725634

在hosts文件中的最后一行加上IP地址 主机名称保存后退出,即可使用主机名进行连接 。

网络传输

ping命令

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

语法

ping [-c num] ip或主机名
  • 选项:-cping网络的次数,不使用-c则无限次ping
  • 参数:IP或主机名,被检查的服务器的IP地址或主机名地址

示例

[root@bowen ~]# ping -c 6  www.taobao.com
PING www.taobao.com.danuoyi.tbcache.com (116.211.221.195) 56(84) bytes of data.
64 bytes from 116.211.221.195 (116.211.221.195): icmp_seq=1 ttl=128 time=12.5 ms
64 bytes from 116.211.221.195 (116.211.221.195): icmp_seq=2 ttl=128 time=14.2 ms
64 bytes from 116.211.221.195 (116.211.221.195): icmp_seq=3 ttl=128 time=12.3 ms
64 bytes from 116.211.221.195 (116.211.221.195): icmp_seq=4 ttl=128 time=12.6 ms
64 bytes from 116.211.221.195 (116.211.221.195): icmp_seq=5 ttl=128 time=13.4 ms
64 bytes from 116.211.221.195 (116.211.221.195): icmp_seq=6 ttl=128 time=13.0 ms

--- www.taobao.com.danuoyi.tbcache.com ping statistics ---
6 packets transmitted, 6 received, 0% packet loss, time 5092ms
rtt min/avg/max/mdev = 12.300/13.035/14.202/0.657 ms

注:也可将参数放在最后

wget命令

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

语法

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

  • 参数:url,下载链接

示例

下载apache-hadoop 3.3.0版本

wget http://archive.apache.org/dist/hadoop/common/hadoop-3.3.0/hadoop-3.3.0.tar.gz

上述是官网的镜像下载,可能会出现下面的错误,并且速度很慢很慢

错误: 无法验证 archive.apache.org 的由 “/C=US/O=Let's Encrypt/CN=R3” 颁发的证书:
  颁发的证书已经过期。
要以不安全的方式连接至 archive.apache.org,使用“--no-check-certificate”。

按照错误提示在wget后加上--no-check-certificate,即

wget --no-check-certificate  http://archive.apache.org/dist/hadoop/common/hadoop-3.3.0/hadoop-3.3.0.tar.gz

建议使用华为源镜像进行下载

wget --no-check-certificate https://repo.huaweicloud.com/apache/hadoop/common/hadoop-3.1.3/hadoop-3.1.3.tar.gz

image-20240222163141691

在后台下载:

wget -b http://mirrors.hust.edu.cn/apache/hadoop/core/stable/hadoop-3.3.0.tar.gz

通过tail可以监控后台下载进度

tail -f wget-log

注意:

无论下载是否完成,都会生成要下载的文件,如果下载未完成,请及时清理未完成的不可用文件

curl命令

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

语法

curl [-o] url
  • 选项:-o,用于下载文件,当URL是下载链接时,可以使用此选项保存文件
  • 参数:url,要发起请求的网络地址

示例

  • cip.cc发起网络请求
[root@bowen download]# curl cip.cc
IP	: 1.199.73.50
地址	: 中国  河南  郑州
运营商	: 电信

数据二	: 河南省新乡市 | 电信

数据三	: 中国河南省郑州市 | 电信

URL	: http://www.cip.cc/1.199.73.50

进程管理

端口

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

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

image-20240222172903790

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

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

示例

image-20240222173743059

如图中,计算机A的微信连接计算机B的微信,A使用的50001即动态端口,临时找一个端口作为出口,计算机B的微信使用端口5678,即为注册端口,长期绑定此端口等待别人连接

查看端口占用

nmap命令

nmap命令查看端口占用情况,nmap不是Linux内置命令需要安装

yum -y install nmap

image-20240222204227938

语法

nmap 被查看的IP地址

示例

[root@bowen download]# nmap 127.0.0.1

Starting Nmap 6.40 ( http://nmap.org ) at 2024-02-22 20:41 CST
Nmap scan report for localhost (127.0.0.1)
Host is up (0.0000040s latency).
Not shown: 998 closed ports
PORT   STATE SERVICE
22/tcp open  ssh
25/tcp open  smtp

Nmap done: 1 IP address (1 host up) scanned in 1.84 seconds

可以看到,本机(127.0.0.1)上有2个端口被程序占用了

其中22端口是ssh远程服务端口,由于我使用了Xshell连接了虚拟机中的Linux,因此该端口被占用。

netstat命令

netstat命令,查看指定端口的占用情况

安装

yum -y install net-tools

语法

netstat -anp|grep 端口号

示例

[root@bowen download]# netstat -anp|grep 123
udp        0      0 192.168.149.130:123     0.0.0.0:*                           1443/ntpd           
udp        0      0 127.0.0.1:123           0.0.0.0:*                           1443/ntpd           
udp        0      0 0.0.0.0:123             0.0.0.0:*                           1443/ntpd           
udp6       0      0 fe80::c6ae:2dbf:f28:123 :::*                                1443/ntpd           
udp6       0      0 ::1:123                 :::*                                1443/ntpd           
udp6       0      0 :::123                  :::*                                1443/ntpd           

可以看到端口123被进程1443占用

0.0.0.0:123表示端口123绑定在0.0.0.0这个地址,该进程允许外部访问

进程

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

为管理运行的程序,每一个程序在运行时会被操作系统注册为系统中的一个进程

并且给每一个进程分配一个独有的进程ID(进程号)

Windows的进程

image-20240222211039486

Linux的进程

image-20240222211132612

ps命令查看进程

ps命令,查看Linux系统中的进程信息

语法

ps [-e -f]
  • 选项:-e,显示出全部进程
  • 选项:-f,以完全格式化的形式展示信息

固定用法:ps -ef,列出全部进程的全部信息

示例

[root@bowen download]# ps -ef
UID         PID   PPID  C STIME TTY          TIME CMD
root          1      0  0 10:42 ?        00:00:01 /usr/lib/systemd/systemd --switched-root --system --deserialize 22
root          2      0  0 10:42 ?        00:00:00 [kthreadd]
root          4      2  0 10:42 ?        00:00:00 [kworker/0:0H]
root          6      2  0 10:42 ?        00:00:00 [ksoftirqd/0]
root          7      2  0 10:42 ?        00:00:00 [migration/0]
root          8      2  0 10:42 ?        00:00:00 [rcu_bh]
root          9      2  0 10:42 ?        00:00:01 [rcu_sched]
root         10      2  0 10:42 ?        00:00:00 [lru-add-drain]
root         11      2  0 10:42 ?        00:00:00 [watchdog/0]
root         13      2  0 10:42 ?        00:00:00 [kdevtmpfs]
root         14      2  0 10:42 ?        00:00:00 [netns]
...........

从左到右:

  • UID 进程所属的用户ID
  • PID 进程的进程号ID
  • PPID 进程的父ID(启动次进程的其他进程)
  • C 此进程的CPU占用率(百分比)
  • STIME 进程的启动时间
  • TTY 启动此进程的终端序号,若显示?,表示非终端启动
  • TIME 进程占用CPU的时间
  • CMD 进程对应的名称或启动路径或启动命令

ps -ef命令可以配合管道符和grep进行精确的查找进程

示例

[root@bowen download]# tail

使用tail命令阻塞进程,复制该会话框,使用ps查看该进程

[root@bowen ~]# ps -ef | grep tail
root       3368   2298  0 21:36 pts/1    00:00:00 tail
root       3370   3350  0 21:36 pts/0    00:00:00 grep --color=auto tail

关闭进程

kill命令杀死进程

语法

kill [-9] 进程ID

选项:-9,表示强制关闭进程。不使用此选项会向进程发送信号要求其关闭,但是否关闭看进程自身的处理机制。

示例

[root@bowen ~]# ps -ef | grep tail
root       3368   2298  0 21:36 pts/1    00:00:00 tail
root       3370   3350  0 21:36 pts/0    00:00:00 grep --color=auto tail
[root@bowen ~]# kill 3368
[root@bowen ~]# ps -ef | grep tail
root       3374   3350  0 21:43 pts/0    00:00:00 grep --color=auto tail

image-20240222214608584

注意

进程3370/3374都表示该命令本身

[root@bowen ~]# ps -ef | grep tail
root       3397   2298  0 21:46 pts/1    00:00:00 tail
root       3399   3350  0 21:46 pts/0    00:00:00 grep --color=auto tail
[root@bowen ~]# kill -9 3397

image-20240222214733572

主机状态

查看系统资源占用

top命令查看CPU、内存使用情况,类似Windows的任务管理器

默认每5秒刷新一次

语法

top

ctrl+c退出

image-20240222215438317

top命令内容详解

前五行

top - 21:54:44 up 11:12,  2 users,  load average: 0.00, 0.01, 0.05

top 命令名称,21:54:44 当前系统时间,up 11:12 启动时间,2 users 2个用户登录,load 1/5/15分钟负载

Tasks: 104 total,   2 running, 102 sleeping,   0 stopped,   0 zombie

Tasks 104个进程,2 running 2个进程在运行,102 sleeping 102个进程在睡眠,0 stopped 0个停止进程,0 zombie 0个僵尸进程

%Cpu(s):  0.0 us,  0.3 sy,  0.0 ni, 99.7 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st

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

KiB Mem :   995676 total,   122704 free,   205680 used,   667292 buff/cache

KiB Mem 物理内存,total 总计,free 空闲,used 使用,buff/cache buffcache占用

KiB Swap:  2097148 total,  2096884 free,      264 used.   634280 avail Mem 

KiB Swap 虚拟内存(交换空间),total 总计,free 空闲,used 使用,buff/cache buffcache占用

进程内容

  PID USER      PR  NI    VIRT    RES    SHR S %CPU %MEM     TIME+ COMMAND                                                                                       
   667 root      20   0  273188   4868   3736 S  0.3  0.5   0:46.71 vmtoolsd                                                                                      
     1 root      20   0  128152   6208   3576 S  0.0  0.6   0:01.69 systemd                                                                                       
     2 root      20   0       0      0      0 S  0.0  0.0   0:00.02 kthreadd                                                                                      
     4 root       0 -20       0      0      0 S  0.0  0.0   0:00.00 kworker/0:0H                                                                                  
     6 root      20   0       0      0      0 S  0.0  0.0   0:00.83 ksoftirqd/0  

各列的解释

  • PID 进程ID
  • USER 进程所属用户
  • PR 进程优先级,越小越高
  • NI 负值表示高优先级,正表示低优先级
  • VIRT 进程使用虚拟内存,单位KB
  • RES 进程使用物理内存,单位KB
  • SHR 进程使用共享内存,单位KB
  • S 进程状态(S休眠,R运行,Z僵尸状态,N负数优先级,I空闲状态)
  • %CPU 进程CPU占用率
  • %MEM 进程内存占用率
  • TIME+ 进程使用CPU时间总计,单位10毫秒
  • COMMAND 进程命令/进程名称/程序文件路径

top命令选项

image-20240222223432504

top交互式选项

top以交互式运行(非-b选项启动),可以用以下交互式命令进行控制

image-20240222223651699

磁盘信息监控

df命令

df命令,查看磁盘使用情况

语法

df [-h]

选项,-h,以更加人性化的单位显示

示例

[root@localhost ~]# df -h
文件系统                 容量  已用  可用 已用% 挂载点
devtmpfs                 475M     0  475M    0% /dev
tmpfs                    487M     0  487M    0% /dev/shm
tmpfs                    487M  7.7M  479M    2% /run
tmpfs                    487M     0  487M    0% /sys/fs/cgroup
/dev/mapper/centos-root   17G  2.0G   16G   12% /
/dev/sda1               1014M  138M  877M   14% /boot
tmpfs                     98M     0   98M    0% /run/user/0

iostat命令

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

安装

yum -y install sysstat

语法

iostat [-x] [num1] [num2]
  • 选项:-x,显示更多信息
  • num1:数字,刷新间隔
  • num2:数字,刷新次数

示例

[root@localhost ~]# iostat
Linux 3.10.0-1160.el7.x86_64 (localhost.localdomain) 	2024年02月23日 	_x86_64_	(1 CPU)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.07    0.00    0.26    0.01    0.00   99.65

Device:            tps    kB_read/s    kB_wrtn/s    kB_read    kB_wrtn
sda               1.75        58.31         3.31     233676      13248
scd0              0.00         0.26         0.00       1028          0
dm-0              1.49        55.32         2.79     221690      11200
dm-1              0.02         0.55         0.00       2204          0

-x显示详细状态

[root@localhost ~]# iostat -x
Linux 3.10.0-1160.el7.x86_64 (localhost.localdomain) 	2024年02月23日 	_x86_64_	(1 CPU)

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           0.06    0.00    0.25    0.01    0.00   99.67

Device:         rrqm/s   wrqm/s     r/s     w/s    rkB/s    wkB/s avgrq-sz avgqu-sz   await r_await w_await  svctm  %util
sda               0.00     0.04    1.38    0.32    53.49     4.76    68.71     0.00    0.54    0.54    0.52   0.33   0.06
scd0              0.00     0.00    0.00    0.00     0.24     0.00   114.22     0.00    1.44    1.44    0.00   1.06   0.00
dm-0              0.00     0.00    1.11    0.36    50.74     4.29    74.72     0.00    0.62    0.64    0.56   0.36   0.05
dm-1              0.00     0.00    0.02    0.00     0.50     0.00    50.09     0.00    0.11    0.11    0.00   0.10   0.00

各列详解

标示说明
Device监测设备名称
rrqm/s每秒需要读取需求的数量
wrqm/s每秒需要写入需求的数量
r/s每秒实际读取需求的数量
w/s每秒实际写入需求的数量
rsec/s每秒读取区段的数量
wsec/s每秒写入区段的数量
rkB/s每秒实际读取的大小,单位为KB
wkB/s每秒实际写入的大小,单位为KB
avgrq-sz需求的平均大小区段
avgqu-sz需求的平均队列长度
await等待I/O平均的时间(milliseconds)
svctmI/O需求完成的平均时间
%util被I/O需求消耗的CPU百分比

iostat命令选项

  1. -c:仅显示CPU使用情况;
  2. -d:仅显示设备利用率;
  3. -k:显示状态以千字节每秒为单位,而不使用块每秒;
  4. -m:显示状态以兆字节每秒为单位;
  5. -p:仅显示块设备和所有被使用的其他分区的状态;
  6. -t:显示每个报告产生时的时间;
  7. -V:显示版号并退出;
  8. -x:显示扩展状态。

网络状态监控

sar命令查看网络的相关统计(该命名很复杂,只介绍简单应用)

语法

sar -n DEV num1 num2

选项

-n,查看网络

DEV,查看网络接口

num1,刷新间隔(不填只查一次)

num2,查看次数(不填则无限次)

示例

[root@localhost ~]# sar -n DEV 2 1
Linux 3.10.0-1160.el7.x86_64 (localhost.localdomain) 	2024年02月23日 	_x86_64_	(1 CPU)

11时09分44秒     IFACE   rxpck/s   txpck/s    rxkB/s    txkB/s   rxcmp/s   txcmp/s  rxmcst/s
11时09分46秒        lo      0.00      0.00      0.00      0.00      0.00      0.00      0.00
11时09分46秒     ens33      0.50      0.50      0.03      0.10      0.00      0.00      0.00

平均时间:     IFACE   rxpck/s   txpck/s    rxkB/s    txkB/s   rxcmp/s   txcmp/s  rxmcst/s
平均时间:        lo      0.00      0.00      0.00      0.00      0.00      0.00      0.00
平均时间:     ens33      0.50      0.50      0.03      0.10      0.00      0.00      0.00

说明

  • IFACE 就是网络设备的名称。
  • rxpck/s 每秒钟接收到的包数目。
  • txpck/s 每秒钟发送出去的包数目。
  • rxkB/s 每秒钟接收到的字节数。
  • txkB/s 每秒钟发送出去的字节数。
  • rxcmp/s 每秒钟接收到的压缩包数目。
  • txcmp/s 每秒钟发送出去的压缩包数目。
  • rxmcst/s 每秒钟接收到的多播包的包数目。

环境变量

环境变量

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

在Linux系统中执行:env命令即可查看当前系统中记录的环境变量

环境变量是一种KeyValue型结构,即名称和值,如下图

image-20240223184810381

图中记录了:

  • HOME/root,root管理员用户的home路径
  • USER/root,当前的操作用户
  • PWD,当前工作路径

等一系列信息,用于辅助系统在运行的时候从环境变量中获取关键信息

环境变量:PATH

无论当前工作目录是什么,都能执行/usr/bin/cd这个程序,这个就是借助环境变量中:PATH这个项目的值来做到的

[root@localhost ~]# env | grep PATH
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

PATH记录了系统执行任何命令的搜索路径(路径之间以:隔开)

  • /usr/local/sbin
  • /usr/local/bin
  • /usr/sbin
  • /usr/bin
  • /root/bin

当执行任何命令,都会按照顺序,从上述路径中搜索要执行的程序的本体

比如执行cd命令,就从第四个目录usr/bin中搜索到了cd命令,并执行

$符号

在Linux系统中,$符号被用于取变量的值

环境变量记录的信息,除了给操作系统自己使用外,如果想要取用,也可以使用

语法

$环境变量名
echo $PATH

通过echo语句输出

[root@localhost ~]# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

又或者使用echo ${PATH}

设置环境变量

Linux环境变量可以用户自行设置,分为:

  • 临时设置,语法:eport 变量名=变量值
  • 永久生效
    • 针对当前用户生效,配置在当前用户的:~/bashrc文件中
    • 针对所有用户生效,配置在系统的:/etc/profile文件中
    • 最后通过语法:source配置文件,进行立刻生效,或重新登录生效

设置临时变量-示例

[root@localhost ~]# export bowenTest=bowen
[root@localhost ~]# echo $bowenTest
bowen

上传、下载

Xshell的上传下载工具是Xftp

image-20240223201047061

上传文件

可以在此电脑上找到需要上传的文件,直接拖到右侧从Linux所需的上传的目录即可

下载

在右侧Linux中右键点击传输即可将所选文件传输到左侧的Windows路径下。

image-20240223201516888

rz/sz命令

安装

yum -y install lrzsz

rz命令,进行上传

语法

rz

image-20240223202749027

直接输入rz就会弹出以上窗口,选择需要的文件上传即可。

sz命令,进行下载

语法

sz 要下载的文件名

示例

[root@localhost ~]# cd /home/bowen/download/
[root@localhost download]# ls
hadoop-3.1.3.tar.gz
[root@localhost download]# sz hadoop-3.1.3.tar.gz 

image-20240223202509087

压缩、解压

压缩格式

常见的压缩格式

  • zip Linux、Windows、MacOS常用
  • 7zip Windows系统常用
  • rar Windows系统常用
  • tar Linux、MacOS系统常用
  • gzip Linux、MacOS系统常用

Linux系统中常用的三种压缩格式:zip、tar、gzip

tar命令

Linux和Mac系统常用有2中压缩格式:

  • .tar,也称之为tarball,归档文件,即简单的将文件组装到一个.tar的文件内,仅进行封装,体积压缩的少
  • .gz,也常见为.tar.gzgzip格式压缩文件,即使用gzip压缩算法将文件压缩到一个文件内,可以极大减少压缩后的体积

针对这两种格式,使用tar命令均可以进行压缩和解压缩的操作

语法

tar [-c -v -x -f -z -C] 参数1 参数2 ... 参数n
  • -c 创建压缩文件,用于压缩模式
  • -v 显示压缩、解压过程,用于查看进度
  • -x 解压模式
  • -f 要创建的文件/要解压的文件,该选项必须在所有选项位置中的最后一个
  • -z gzip模式,不使用-z就是普通的tarball格式
  • -C 选择解压的目的地,用于解压模式

tar命令压缩

tar常用组合

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

注意

  • -z选项一般位于选项的第一位
  • -f选项必须在最后一个

tar命令解压

tar常用的解压组合有:

  • 解压test.tar,将文件解压至当前目录
tar -xvf test.tar
  • 解压test.tar,将文件解压至指定目录(/home/bowen/test
tar -xvf test.tar -C /home/bowen/test
  • gzip模式解压test.tar.gz,将文件解压至指定目录(/home/bowen/test
tar -zxvf test.tar.gz -C /home/bowen/test

注意

  • -f选项,必须在选项组合的最后一位
  • -z选项,建议放在开头
  • -C选项单独使用,和解压所需的其他参数分开
  • 解压时有同名内容会直接替换

zip命令压缩文件

使用zip命令,压缩文件为zip压缩包

语法

zip [-r] 参数1 参数2 ... 参数n
  • -r 被压缩的包含文件夹的时候,需要使用-r选项,和rm/cp等命令的-r效果一致

示例

  • 将a.txt b.txt c.txt 压缩到test.zip文件内
zip test.zip a.txt b.txt c.txt
  • 将test、bowen两个文件夹和a.txt文件,压缩到test.zip文件内
zip -r test.zip test bowen a.txt

unzip命令解压文件

使用unzip命令,可以解压zip压缩包

语法

unzip [-d] 参数
  • -d 指定要解压去的位置,同tar-C选项
  • 参数 被解压的zip压缩包文件

示例

  • 将test.zip解压到当前目录
unzip test.zip
  • 将test.zip解压到指定文件夹内(/home/bowen/download)
unzip test.zip -d /home/bowen/download

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

运用qsort函数进行快排并使用C语言模拟qsort

qsort 函数的使用 首先qsort函数是使用快速排序算法来进行排序的&#xff0c;下面我们打开官网来查看qsort是如何使用的。 这里有四个参数&#xff0c;首先base 是至待排序的数组的首元素的地址&#xff0c;num 是值这个数组的元素个数&#xff0c;size 是指每个元素的大小&am…

MySQL进阶之(三)InnoDB数据存储结构之数据页结构

三、InnoDB数据存储结构之数据页结构 3.1 数据库的存储结构3.1.1 MySQL 数据存储目录3.1.2 页的引入3.1.3 页的概述3.1.4 页的上层结构 3.2 数据页结构3.2.1 文件头和文件尾01、File Header&#xff08;文件头部&#xff09;02、File Trailer&#xff08;文件尾部&#xff09; …

麒麟银河操作系统V10部署ffmpeg(也能用于Linux系统)

麒麟银河操作系统V10部署ffmpeg(也能用于Linux系统) 部署ffmpeg用来处理视频的各种操作 想使用ffmpeg&#xff0c;要先安装nasm&#xff0c;yasm&#xff0c;x264之后&#xff0c;否则会报错 nkvers 查看麒麟操作系统版本 cat /proc/version #查看linux版本信息 uname -a …

C++:菱形继承问题

目录 1、什么是菱形继承 2、虚拟继承 3、一些常见问题 1. 什么是菱形继承&#xff1f;菱形继承的问题是什么&#xff1f; 2. 什么是菱形虚拟继承&#xff1f;如何解决数据冗余和二义性的 3. 继承和组合的区别&#xff1f;什么时候用继承&#xff1f;什么时候用组合&#…

模拟栈(数组实现)

题目描述&#xff1a; 代码模板&#xff1a; //push插入操作 void push(int x) {//让栈顶元素从0开始stk[ tt] x; }//pop弹出操作 void pop() {//直接把这个元素跳过&#xff08;相当于弹出&#xff09;tt--; }//empty判断是否为空操作 bool empty() {if(tt > 0) return …

程序员是如何看待“祖传代码”的?

目录 ​编辑 程序员是如何看待“祖传代码”的&#xff1f; 一、什么是“祖传代码”&#xff1f; 二、“祖传代码”的利弊 1. 可以节省开发成本 2. 可能引入安全隐患 3. 可能增加系统的维护难度 三、祖传代对程序员的影响 1. 丰富程序员的技能和知识 2. 提高程序员的创…

在两台CentOS 7服务器上部署MinIO集群---准确

环境说明&#xff1a; 2台Centos7服务器 IP地址分别为172.16.1.9和172.16.1.10 1. 创建minio用户和目录 在两台服务器上执行以下命令&#xff1a; sudo useradd -m -d /app/minio minio sudo mkdir -p /app/minioData sudo mkdir -p /app/minio/logs sudo chown -R mini…

范伟:你们怎么老提1,200呢,有什么典故啊?赵本山:没有啊!

范伟&#xff1a;你们怎么老提1,200呢,有什么典故啊?赵本山&#xff1a;没有啊&#xff01; --小品《面子》&#xff08;中3&#xff09;的台词 表演者&#xff1a;赵本山 高秀敏 范伟 &#xff08;接上&#xff09; 范伟&#xff1a;哎吃啊 赵&#xff1a;哎呀这电视看的挺…

什么是端点安全以及如何保护端点

什么是端点安全 端点是指可以接收信号的任何设备&#xff0c;是员工使用的一种计算设备&#xff0c;用于保存公司数据或可以访问 Internet。端点的几个示例包括&#xff1a;服务器、工作站&#xff08;台式机和笔记本电脑&#xff09;、移动设备、虚拟机、平板电脑、物联网、可…

Vue3_2024_1天【Vue3创建和响应式,对比Vue2】

前言&#xff1a; Vue3对比Vue2版本&#xff0c;它在性能、功能、易用性和可维护性方面都有显著的提升和改进。 性能优化&#xff1a;模板编译器的优化、对Proxy的支持以及使用了更加高效的Virtual DOM算法等。这使得Vue3的打包大小减少了41%&#xff0c;初次渲染提速55%&#…

【基础训练 || Test-1】

总言 主要内容&#xff1a;一些习题。       文章目录 总言一、选择1、for循环、操作符&#xff08;逗号表达式&#xff09;2、格式化输出&#xff08;转换说明符&#xff09;3、for循环、操作符&#xff08;逗号表达式、赋值和判等&#xff09;4、if语句、操作符&#xff…

如何根据PalWorldSettings.ini重新生成定制的WorldOption.sav文件?

这个过程涉及到将PalWorldSettings.ini 文件中的设置与WorldOption.sav 文件进行匹配和替换。具体的操作步骤可能包括检查PalWorldSettings.ini 文件中的设置是否与WorldOption.sav 文件中的设置相匹配&#xff0c;然后根据这些设置重新生成或修改WorldOption.sav 文件&#xf…

腾讯云学生云服务器_学生云主机_学生云数据库_云+校园特惠套餐

2024年腾讯云学生服务器优惠活动「云校园」&#xff0c;学生服务器优惠价格&#xff1a;轻量应用服务器2核2G学生价30元3个月、58元6个月、112元一年&#xff0c;轻量应用服务器4核8G配置191.1元3个月、352.8元6个月、646.8元一年&#xff0c;CVM云服务器2核4G配置842.4元一年&…

论文里点击如图?-?如何跳转到图片的题注

写论文&#xff0c;如何点击如图?-?然后光标自己能跳转到指定图片的题注之前呢&#xff1f; 首先&#xff0c;你要确定自己已经列好了标题&#xff0c;如几点几&#xff0c;几点几&#xff0c;比如我写到第三个章节的标题为 3.2 XXXXXXXXX 那么接下来后面的操作会出现图3-&…

Python中学习调试requests模块时出现的大坑(1)

为防止迷路: 学习机械相关,请关注公众号:南大盛联 学习软件,硬件,请关注公众号号:一训微课 cmd模式下 不知道上面这行的话,需要补课。 pip install requests 这个不知道的话,也要补课 pip是python的安装工具。 install是安装的意思 requests是我们需要安装的模…

腾讯云优惠券领取入口_先领取再下单_2024腾讯云优惠攻略

腾讯云优惠代金券领取入口共三个渠道&#xff0c;腾讯云新用户和老用户均可领取8888元代金券&#xff0c;可用于云服务器等产品购买、续费和升级使用&#xff0c;阿腾云atengyun.com整理腾讯云优惠券&#xff08;代金券&#xff09;领取入口、代金券查询、优惠券兑换码使用方法…

【C++庖丁解牛】类与对象

&#x1f4d9; 作者简介 &#xff1a;RO-BERRY &#x1f4d7; 学习方向&#xff1a;致力于C、C、数据结构、TCP/IP、数据库等等一系列知识 &#x1f4d2; 日后方向 : 偏向于CPP开发以及大数据方向&#xff0c;欢迎各位关注&#xff0c;谢谢各位的支持 目录 1.面向过程和面向对象…

AJAX 学习笔记(Day1)

「写在前面」 本文为黑马程序员 AJAX 教程的学习笔记。本着自己学习、分享他人的态度&#xff0c;分享学习笔记&#xff0c;希望能对大家有所帮助。 目录 0 课程介绍 1 AJAX 入门 1.1 AJAX 概念和 axios 使用 1.2 认识 URL 1.3 URL 查询参数 1.4 常用请求方法和数据提交 1.5 HT…

arduino uno R3驱动直流减速电机(蓝牙控制)

此篇博客用于记录使用arduino驱动直流减速电机的过程&#xff0c;仅实现简单的功能&#xff1a;PID调速、蓝牙控制 1、直流减速电机简介2、DRV8833电机驱动模块简介3、HC-05蓝牙模块简介电机转动测试4、PID控制5、蓝牙控制电机 1、直流减速电机简介 我在淘宝购买的电机&#x…

VMware安装Centos7详细过程

1.硬件软件准备 软件&#xff1a;VMware16 硬件&#xff1a;因为是在宿主机上运行虚拟化软件安装centos&#xff0c;所以对宿主机的配置有一定的要求。最起码I5CPU双核、硬盘500G、内存4G以上。 镜像&#xff1a;centos7,镜像下载地址centos安装包下载_开源镜像站-阿里云 2…