Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/shell/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Shell 无法在不打开作业的情况下终止作业_Shell_Task - Fatal编程技术网

Shell 无法在不打开作业的情况下终止作业

Shell 无法在不打开作业的情况下终止作业,shell,task,Shell,Task,我运行以下代码失败 sudo killall %4 其中%4是我的Vim会话 如何在不使作业前景化的情况下终止作业?请尝试杀死%4。unix shell使用%x作为当前正在运行的进程的变量。要查看可与%x语法一起使用的进程,请使用jobs。Killall是“kill”的包装,基本上相当于“ps-aux | grep | cut-f2-d”、“xargs kill”或类似的东西(如果你是一个贝壳迷) 不,抱歉,这个shell命令不太有效,但它确实说明了killall是如何工作的=p。它只会杀死与

我运行以下代码失败

sudo killall %4
其中%4是我的Vim会话


如何在不使作业前景化的情况下终止作业?

请尝试
杀死%4
。unix shell使用%x作为当前正在运行的进程的变量。要查看可与%x语法一起使用的进程,请使用
jobs
。Killall是“kill”的包装,基本上相当于“ps-aux | grep | cut-f2-d”、“xargs kill”或类似的东西(如果你是一个贝壳迷)

不,抱歉,这个shell命令不太有效,但它确实说明了killall是如何工作的=p。它只会杀死与您提供的字符串匹配的所有进程


另外,尝试“杀人”来了解更多关于杀人的知识。特别是,kill-9你可能会发现很有用。这在某种程度上相当于“强制退出”。

尝试
杀死%4
。unix shell使用%x作为当前正在运行的进程的变量。要查看可与%x语法一起使用的进程,请使用
jobs
。Killall是“kill”的包装,基本上相当于“ps-aux | grep | cut-f2-d”、“xargs kill”或类似的东西(如果你是一个贝壳迷)

不,抱歉,这个shell命令不太有效,但它确实说明了killall是如何工作的=p。它只会杀死与您提供的字符串匹配的所有进程

另外,尝试“杀人”来了解更多关于杀人的知识。特别是,kill-9你可能会发现很有用。这差不多相当于“强制退出”。

我相信你想要的是“杀死”而不是“杀死”。我在tcsh下测试如下:

home% cat
^Z
Suspended
home% kill %1
home% 
[1]    Terminated                    cat
此外,我怀疑这对sudo是否有效,因为sudo会调用一个新的shell,不是吗?在该shell中,不会定义%4

home% cat
^Z
Suspended
home% sudo kill %1
Password:
kill: illegal process id: %1
如果您真的需要sudo,可以尝试以下方法:

home% jobs -l
[1] + 26318 Suspended cat
home% sudo kill 26318
我相信你想要的是“杀戮”而不是“杀戮”。我在tcsh下测试如下:

home% cat
^Z
Suspended
home% kill %1
home% 
[1]    Terminated                    cat
此外,我怀疑这对sudo是否有效,因为sudo会调用一个新的shell,不是吗?在该shell中,不会定义%4

home% cat
^Z
Suspended
home% sudo kill %1
Password:
kill: illegal process id: %1
如果您真的需要sudo,可以尝试以下方法:

home% jobs -l
[1] + 26318 Suspended cat
home% sudo kill 26318

关于sudo的观点很好。如果不使用sudo-,您仍然应该继承一些shell环境。。。嗯…谢谢你的回答!我最初使用kill,但它不适用于我的Vim进程。因此,在我的代码示例中,我将killall与sudo一起使用,以使我的命令功能强大。现在对我来说很明显,sudo不能使命令更强大,killall也不能使kill命令更强大。sudo的观点很好。如果不使用sudo-,您仍然应该继承一些shell环境。。。嗯…谢谢你的回答!我最初使用kill,但它不适用于我的Vim进程。因此,在我的代码示例中,我将killall与sudo一起使用,以使我的命令功能强大。现在对我来说很明显,sudo不能使命令更强大,killall也不能使kill命令更强大。@Erik:谢谢你解释killall是如何工作的。然而,似乎:killall在数学上并不包括kill:参见Chris的代码示例。@Erik:谢谢你对killall工作原理的解释。然而,似乎:killall在数学上并不包括kill:参见Chris的代码示例。你的意思是,“你如何在没有前景化的情况下终止一份工作?”查尔斯:我的意思正是你所说的。我澄清了这个问题,以便将来更容易找到它。你的意思是,“你如何在没有前景的情况下终止一份工作”?查尔斯:我的意思正是你所说的。我澄清了这个问题,以便将来更容易找到它。