如何在终端中退出“ sudo -s”命令?


30

sudo -s在终端输入命令,它从

shameek@shameek-K55VD:~$ 

root@shameek-K55VD:~#. 

现在,当我单击关闭终端窗口图标时,它显示:“终端中仍有一个进程正在运行,关闭该进程可能会杀死它”。

关闭此终端? 对话框

我对Ubuntu完全陌生,请建议使用一条命令从

root@shameek-K55VD:~# 

shameek@shameek-K55VD:~$

然后我可以关闭终端。


1
如果您确定已完成终端中的所有操作,则可以通过终止[可能]进程来结束……
Gediminas Jeremiah Gudelis

通过使用“退出”或Ctrl-D,将警告您是否有需要终端的后台进程。否则,强行关闭端子可能会导致工作丢失。
wallyk

Answers:


62

Ctrl+ D将使您退出超级用户并返回到正常用户状态。或者,您可以输入exit


11
有1个轻微提示:如果$ IGNOREEOF处于活动状态,则d无法使用。
Rinzwind 2013年

4
要补充说明所发生的情况:sudo -s实际上,只是以root用户身份将新Shell作为子进程启动,而不是更改现有Shell的凭据。对于终端,这与仍在运行的任何其他命令没有区别。退出内壳就像退出其他任何外壳一样。这也意味着shell是可堆叠的-您可以bash在旧的shell中调用并获取一个新的shell。
Simon Richter

1
另外,如果您尚未重置它,则SHLVL环境变量将告诉您您正在运行多少层外壳。
伊森2013年

34

键入,exit然后您将注销为普通用户。然后exit再次键入以关闭终端,或仅用鼠标将其关闭。

GNOME终端显示退出命令以退出子shell


@EliahKagan sudo su和之间的区别到底是什么sudo -s
acolyte 2013年

sudo -s将不会运行passwd文件中指定的shell环境。但这不会更改某些环境变量,例如:$ HOME
dedunumax

13

如果您在终端上没有做任何重要的事情,实际上可以在关闭此终端上单击关闭终端?(“关闭终端会杀死它”)对话框。

这将发送SIGHUP到正在运行的外壳,然后将退出,就像它将如果你使用exit命令Ctrl+D(也不错的方式)。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.