Ser*_*nyy 11
有几种方法可以让多个命令与sudo
.
第一个最适合您的用例。其他是为了探索替代方案而添加的;它们可能不适合您的特定需求,但可能在将来对您或其他用户有用。
方法#1:最干净、最简单
将所有内容放入脚本中,例如myscript.sh
,使用 使文件可执行chmod 755 myscript.sh
,然后使用sudo myscript.sh
方法#2:一长串命令
您需要具有超级用户权限的东西才能运行多个命令。那将是 shell, ( 任何 shell,bash
或者sh
) 。Shell 有一个-c
标志,它告诉它们运行一个命令或一组由分号分隔的命令;
。简单的例子:sudo bash -c 'apt-get update; apt-get upgrade'
。特别是,kyodake 的回答可以像这样重新完成:
sudo bash -c 'apt-get update;apt-get install --reinstall aptitude deborphan mate-desktop; aptitude remove '?and(?reverse-depends(unity),?not(?reverse-depends(?exact-name(mate-desktop))))';aptitude remove '?and(?reverse-depends(ubuntu),?not(?reverse-depends(?exact-name(mate-desktop))))';aptitude remove '?and(?reverse-depends(gnome),?not(?reverse-depends(?exact-name(mate-desktop))))';apt-get install --reinstall mate-desktop;deborphan;apt-get --purge remove $(deborphan);deborphan --libdevel;apt-get --purge remove $(deborphan --libdevel);deborphan --find-config;dpkg --purge $(deborphan --find-config);apt-get autoremove;apt-get clean;reboot'
Run Code Online (Sandbox Code Playgroud)
冗长?是的。当您只需要使用 sudo 运行几个命令时,这种方法效果更好。
方法 #3:玩 sudo 超时
默认情况下,sudo
权限在 15 分钟后超时。因此,如果您确定所有这些命令不会花费那么长时间,您可以运行第一个命令,sudo
并且会提示您输入密码;对于所有后续命令,您将不会收到提示,但您仍然需要键入sudo
.
方法#4:使用root shell
正如 kyodake 在答案中所建议的那样,登录到 root shellsudo -i
以使用 root 权限,直到您exit
. 请注意,出于安全原因,不建议这样做。除非你 100% 确定你会记得在完成工作后注销并且没有人会进入你的 root shell,然后......根据你的判断使用这种方法。
归档时间: |
|
查看次数: |
17218 次 |
最近记录: |