命令 'bg' 和“&”在 Linux 终端上不起作用

Command 'bg' and '&' don't work on Linux terminal

我运行宁 Linux:

Linux davide 5.7.0-kali1-amd64 #1 SMP Debian 5.7.6-1kali2 (2020-07-01) x86_64 GNU/Linux

当我尝试 运行 某些后台进程时,它们出现在终端上,我可以看到所有 STDOUT。我在表达式后尝试了命令“'Ctrl+z'+bg”和“&”。

示例:Ping -c 10 127.0.0.1 &

似乎该进程在后台 运行ning(实际上我收到了 PID,就像它在工作一样)但后来我在终端中看到了所有输出。 我还可以 运行 像这里这样的其他命令:

$ ping -c 10 127.0.0.1 &
[1] 2079
$ PING 127.0.0.1 (127.0.0.1) 56 (84) bytes of data.
64 bytes from 127.0.0.1: icmp_seq=1 ttl=64 time=0.041 ms
64 bytes from 127.0.0.1: icmp_seq=2 ttl=64 time=0.053 ms
64 bytes from 127.0.0.1: icmp_seq=3 ttl=64 time=0.053 ms
64 bytes from 127.0.0.1: icmp_seq=4 ttl=64 time=0.047 ms
64 bytes from 127.0.0.1: icmp_seq=5 ttl=64 time=0.052 ms
64 bytes from 127.0.0.1: icmp_seq=6 ttl=64 time=0.059 ms
64 bytes from 127.0.0.1: icmp_seq=7 ttl=64 time=0.053 ms
ls
 Desktop   Documents   Downloads   Music   Pictures   Public   Templates   Videos
$ 64 bytes from 127.0.0.1: icmp_seq=8 ttl=64 time=0.054 ms
64 bytes from 127.0.0.1: icmp_seq=9 ttl=64 time=0.057 ms
64 bytes from 127.0.0.1: icmp_seq=10 ttl=64 time=0.054 ms

--- 127.0.0.1 ping statistics ---
10 packets transmitted, 10 received, 0% packet loss, time 9215ms
Rtt min/avg/max/mdev = 0.041/0.052/0.059/0.004 ms
[1]+  Done    ping -c 10 127.0.0.1

我不知道是新版本的错误还是配置错误,但我找不到关于此的任何主题。有人可以帮忙吗?

& 用于使命令 运行 成为背景,但不会使其输出隐藏。

如果要将输出重定向到文件,请使用 >,它用于重定向输出。

例如:

ping www.wikipedia.com > output.txt &

此外,如果您不想存储它,您可以将输出重定向到 /dev/null,尽管它在这里不相关。

关于Ctrl + z:它用于将命令置于后台挂起模式而不是运行。有关详细信息,请参阅 here