小编Dus*_*ell的帖子

Ctrl + C 无法杀死进程怎么办?

Ctrl+C并不总是可以杀死当前进程(例如,如果该进程在某些网络操作中很忙)。在这种情况下,您只能通过光标看到“^C”而不能做其他事情。

在不丢失终端的情况下强制该进程立即终止的最简单方法是什么?

答案总结: 通常,您可以Ctrl+Z将进程置于睡眠状态,然后执行kill -9 _process-pid_,在那里您可以使用ps和其他工具找到进程的 pid 。在Bash(也可能是其他 shell)上,您可以kill -9 %1(或一般情况下使用 '%N'),这更容易。如果Ctrl+Z不起作用,您将不得不打开另一个终端并从那里杀死

linux bash shell

202
推荐指数
7
解决办法
27万
查看次数

在 Linux 上嗅探 TCP 流量数据的最简单方法是什么?

我想要一种简单的方法来显示通过我的 Linux 机器上的任何接口的所有 TCP 数据(不是 TCP 标头或其他任何东西)。

例如,我想要一个神奇的命令,如果我这样做:

magic_commmand_I_want port=1234
Run Code Online (Sandbox Code Playgroud)

那么如果有一台服务器在我的机器上侦听端口 1234,并且有人这样做了:

echo hello | nc localhost 1234
# Note: "nc" (aka "netcat") is a simple tool that sends data to a host/port
Run Code Online (Sandbox Code Playgroud)

然后神奇的命令会打印出来:

hello
Run Code Online (Sandbox Code Playgroud)

我已经尝试过“tcpdump”、“ethereal”、“tethereal”、“tshark”等,但是如何让它们做到这一点并不明显:

  • 不显示 IP 地址或其他元数据
  • 只显示正在发送的“数据”,而不是单个数据包及其标头
  • 按原样打印数据,不是十六进制,也不是包偏移标记
  • 嗅探所有网络流量(无论是在eth0还是eth1lo 上,等等...)

是的,您可能可以将一组管道式 unix 命令串在一起来执行此操作,但是下次记住这一点并不容易:)

如果您有一个执行此操作的确切命令行的简单示例,这就是我想要的。

networking linux

87
推荐指数
4
解决办法
16万
查看次数

标签 统计

linux ×2

bash ×1

networking ×1

shell ×1