gedit 之后的 & 起什么作用?

gedit 之后的 & 起什么作用?

每当我想从终端打开编辑器时,我都会写

gedit filename.sh

但在这种情况下,除非我先关闭编辑器,否则我无法在终端中再次写入。

但每当我使用命令

gedit filename.sh &

它返回一个值,像这样

在此处输入图片描述

然后我就不用关闭编辑器就能重新控制终端了。我从 YouTube 视频中学到了这个技巧,但那个人没有提到为什么会发生这种情况,也没有提到返回的数字是多少。我是 Linux 新手,所以这个问题对一些专业人士来说可能很愚蠢,但我仍然有疑问,如果您能帮助我,我将不胜感激。谢谢。

答案1

后台运行命令:

$ sleep 1000 &
[1] 17227

看一下输出jobs

$ jobs -l
[1]  + 17227 running    sleep 1000

你得到:

  • [1]工作编号
  • 17227进程 ID PID

这两个 ID 在不同场景下都有用。例如

将作业发送到前台:

$ fg 1

将作业发送到后台:

$ bg 1

终止工作:

$ kill %1

找出进程的命令行:

$ ps aux | grep 17227
user      17227   0.0  0.0  4268156    500 s002  TN    3:35PM   0:00.00 sleep 1000

希望能帮助到你。

答案2

通过执行类似的操作,您实际上gedit filename.sh &是在告诉 shell 在后台运行 gedit 作为一项作业(如所示[1] 3842)。

相关内容