下面我将详细解释,并提供一些其他有用的方法和技巧。

使用 Ctrl + C (最常用、最直接)
这是最标准、最快捷的停止方法。
-
启动
ping命令: 你需要在一个终端窗口中运行ping命令。ping百度:ping www.baidu.com
你会看到类似下面的输出,表示
ping正在持续运行:PING www.a.shifen.com (182.61.200.7) 56(84) bytes of data. 64 bytes from 182.61.200.7: icmp_seq=1 ttl=118 time=25.3 ms 64 bytes from 182.61.200.7: icmp_seq=2 ttl=118 time=24.8 ms 64 bytes from 182.61.200.7: icmp_seq=3 ttl=118 time=25.1 ms ... (会一直持续下去) -
停止
ping命令: 在你的键盘上,同时按下Ctrl键 和C键。
(图片来源网络,侵删)# 在终端中按下 Ctrl+C ^C
你会看到
ping命令的输出被中断,并显示一个统计摘要,然后终端会返回到命令提示符状态,等待你输入下一个命令。--- www.a.shifen.com ping statistics --- 3 packets transmitted, 3 received, 0% packet loss, time 2004ms rtt min/avg/max/mdev = 24.813/25.077/25.311/0.224 ms [root@localhost ~]$这个摘要非常有用,它告诉你发送了多少个包、收到了多少、丢包率以及往返时间的平均值。
使用 Ctrl + Z (挂起,非停止)
这个方法不会停止 ping 命令,而是将它挂起到后台。
-
启动
ping命令:
(图片来源网络,侵删)ping 8.8.8.8
-
挂起
ping命令: 按下Ctrl + Z。 你会看到类似以下的输出:^Z [1]+ Stopped ping 8.8.8.8这表示
ping进程已经停止(挂起)了,但它并没有被终止,它现在在后台处于“睡眠”状态。 -
如何处理挂起的进程:
- 查看后台任务:输入
jobs命令jobs
输出:
[1]+ Stopped ping 8.8.8.8 - 让进程在后台继续运行:输入
bg(background)bg %1 # %1 是任务编号
ping会继续在后台运行,你可以在前台继续操作其他命令。 - 将进程调回前台并停止它:输入
fg(foreground)Ctrl + Cfg %1
ping会重新回到前台,此时你再按下Ctrl + C就可以正常停止它了。 - 彻底终止进程:使用
kill命令kill %1 # 终止任务号为 1 的进程
或者用
kill -9 %1强制杀死。
- 查看后台任务:输入
Ctrl + Z 是“暂停”,Ctrl + C 是“终止”,对于 ping 这种你只想让它停止的命令,请直接使用 Ctrl + C。
在后台运行并手动终止 (高级用法)
如果你想让 ping 在后台运行,然后手动去终止它,可以这样做:
-
让
ping在后台运行: 在命令末尾加上&符号。ping google.com &
系统会返回一个进程ID (PID),
[1] 12345这个
12345ping进程的ID。 -
停止该后台进程: 使用
kill命令加上进程ID来终止它。kill 12345
如果进程非常顽固,无法正常终止,可以使用强制终止命令:
kill -9 12345
-9信号是SIGKILL,它会强制操作系统立即终止该进程,不给进程任何清理的机会。
如何防止 ping 命令无限运行?
有时候你可能想只 ping 一定次数就自动停止,而不是手动去按 Ctrl + C,这时可以使用 -c (count) 参数。
-
ping4次后自动停止:ping -c 4 www.baidu.com
当
ping完成第4次后,它会自动显示统计摘要并退出。 -
ping持续运行一段时间后停止: 使用-w(timeout) 参数,单位是秒。ping -w 10 www.baidu.com
这个命令会持续
ping10秒钟,然后自动停止,无论期间发了多少个包。
总结表格
| 方法 | 操作 | 效果 | 适用场景 |
|---|---|---|---|
Ctrl + C |
在终端中按下 | 立即终止 ping 进程,并显示统计信息。 |
最常用,当你想手动停止 ping 时。 |
Ctrl + Z |
在终端中按下 | 挂起 ping 进程到后台,进程处于“Stopped”状态。 |
暂时中断 ping,希望稍后继续或查看其他任务。 |
kill <PID> |
先找到PID,再执行 | 终止指定的 ping 进程。 |
在后台运行 ping,或者需要远程终止进程时。 |
ping -c <N> |
在命令中加入参数 | ping N次后自动停止。 |
需要测试网络连通性,但不需要持续监控时。 |
ping -w <S> |
在命令中加入参数 | ping 持续S秒后自动停止。 |
需要在指定时间内测试网络延迟或丢包率时。 |
对于绝大多数情况,你只需要记住 Ctrl + C 就足够了。
