目录
[1. 网络请求和下载](#1. 网络请求和下载)
[1.1 ping命令](#1.1 ping命令)
[1.2 wget命令](#1.2 wget命令)
[1.3 curl命令](#1.3 curl命令)
[2. 端口](#2. 端口)
[2.1 查看端口占用](#2.1 查看端口占用)
[使用nmap命令,安装nmap:yum -y install nmap](#使用nmap命令,安装nmap:yum -y install nmap)
[3. 进程管理](#3. 进程管理)
[3.1 进程](#3.1 进程)
[3.2 查看进程](#3.2 查看进程)
[3.3 查看指定进程](#3.3 查看指定进程)
[3.4 关闭进程](#3.4 关闭进程)
1. 网络请求和下载
1.1 ping命令
可以通过ping命令,检查指定的网络服务器是否是可联通状态。
语法:ping [-c num] ip或主机名
- 选项:-c,检查的次数,不使用-c选项,将无限次数持续检查。
- 参数:ip或主机名,被检查的服务器的ip地址或主机名地址。
示例:检查百度网是否连通。
[root@hexuan ~]# ping www.baidu.com
PING www.a.shifen.com (183.2.172.42) 56(84) bytes of data.
64 bytes from 183.2.172.42 (183.2.172.42): icmp_seq=1 ttl=128 time=32.6 ms
64 bytes from 183.2.172.42 (183.2.172.42): icmp_seq=2 ttl=128 time=33.5 ms
64 bytes from 183.2.172.42 (183.2.172.42): icmp_seq=3 ttl=128 time=33.5 ms
64 bytes from 183.2.172.42 (183.2.172.42): icmp_seq=4 ttl=128 time=32.8 ms
64 bytes from 183.2.172.42 (183.2.172.42): icmp_seq=5 ttl=128 time=32.8 ms
^C
--- www.a.shifen.com ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4028ms
rtt min/avg/max/mdev = 32.624/33.112/33.598/0.459 ms
1.2 wget命令
wget是非交互式的文件下载器,可以在命令行内下载网络文件。
语法:wget [-b] url
- 选项:-b可选,后台下载,会将日志写入到当前工作目录的wget-log文件。
- 参数:url,下载链接。
1.3 curl命令
curl命令可以发送http网络请求,可用于:下载文件,获取信息。
语法:curl [-O] url
- 选项:-O,用于下载文件,当url是下载链接时,可以使用此选项保存文件。
- 参数:url,要发送请求的网络请求。
2. 端口
端口,是设备与外界通讯交流的出入口。端口可以分为:物理端口和虚拟端口两类。
- 物理端口:又可称之为接口,是可见的端口,如USB接口。
- 虚拟端口:是指计算机内部的端口,是不可见的,是用来操作系统和外部进行交互使用的。
物理端口我们日常生活中经常见到,那么虚拟端口又有什么用呢?
计算机程序之间的通讯,通过IP只能锁定计算机,但是无法锁定具体的程序。
通过端口可以锁定计算机具体的程序,确保程序之间进行沟通。
IP地址相当于小区地址,在小区内可以有很多住户(程序)而门牌号(端口)就是各个住户(程序)的联系地址。
Linux系统是一个超大号小区,可以支持65535个端口,这6万多个端口分为3类进行使用:
- 公认端口:1~1023,通常用于一些系统内置或知名程序的的预留使用,如SSH服务的22端口,HTTPS服务的443端口。非特殊需要,不要占用这个范围的端口。
- 注册端口:1024~49151,通常可以随意使用,用于松散的绑定一些程序和服务。
- 动态端口:49152~65535,通常不会固定绑定程序,而是当程序对外进行网络链接时,用于临时使用。
如图,计算机A的微信连接计算机B的微信,A使用的50001即动态端口,临时找一个端口作为出口。计算机B的微信使用端口5678,即注册端口,长期绑定此端口等待别人连接。
2.1 查看端口占用
可以通过Linux命令去查看端口的占用情况。
使用nmap命令,安装nmap:yum -y install nmap
语法:nmap 被查看的IP地址
[root@hexuan ~]# nmap 127.0.0.1
Starting Nmap 6.40 ( http://nmap.org ) at 2024-08-26 22:50 CST
Nmap scan report for localhost (127.0.0.1)
Host is up (0.0000080s latency).
Not shown: 996 closed ports
PORT STATE SERVICE
22/tcp open ssh
111/tcp open rpcbind
631/tcp open ipp
3306/tcp open mysql
Nmap done: 1 IP address (1 host up) scanned in 2.04 seconds
可以看到,本机上有4个端口现在被程序占用了。
可以通过netstat命令,查看指定端口的占用情况。
语法:netstat -anp|grep 端口号,安装netstat:yum -y install net-tools
3. 进程管理
3.1 进程
程序运行在操作系统中,是被操作系统所管理的。
为管理运行的程序,每一个程序在运行的时候,便被操作系统注册为系统中的一个进程。
并会为每个进程都分配一个独有的进程ID(进程号)。
3.2 查看进程
可以通过ps命令查看Linux系统中的进程信息。
语法:ps [-e -f]
选项:-e,显示全部的进程
选项:-f,以完全格式化的形式展示出信息。
一般来说,固定用法就是:ps -ef列出全部的进程的全部信息。
从左到右分别是:
- UID:进程所属的用户ID。
- PID:进程的进程号ID。
- PPID:进程的父ID(启动此进程的其他进程)
- C:此进程的CPU占有率。
- STIME:进程的启动时间。
- TTY:启动此进程的终端序号,如显示?,表示非终端启动。
- TIME:进程占用CPU的时间。
3.3 查看指定进程
- 在XShell中,执行命令tail,可以看到,此命令一直阻塞在那里。
- 在XSell中,复制一个标签页,执行ps -ef找到tail这个程序的进程信息。
- 问题是:列出的信息太多,无法准确找到我们想要知道的进程信息。
我们可以使用管道符配合grep过滤到我们不想看到的进程。
ps -ef | grep 命令(此处使用tail)
- 过滤不仅仅过滤名称,进程号,用户ID等,都可以被grep过滤。
- 如ps -ef|grep 30001,过滤带30001关键字的进程信息。
3.4 关闭进程
在win系统中,可以通过任务管理器选择进程后,点击结束进程从而关闭。(Shift+Ctrl+Esc启动任务管理器)。
同样,在Linux系统中可以通过kill关闭进程。
语法:kill [-9] 进程ID
选项:-9,表示强制关闭进程。不使用此选项会向进程发送信号要求其关闭,但是否关闭还看进程自身的处理机制。