我的问题如下:我想编辑一个只能由 root 读取的文件。这就是为什么我使用
sudo vim ~/thefile
Run Code Online (Sandbox Code Playgroud)
我可以打字
sudo -K
Run Code Online (Sandbox Code Playgroud)
退出vim后,但我希望有一个选项或某些东西可以让sudo自动忘记密码。我当然想过编辑 sudoers 文件并将超时设置为 0,但我一般不想更改设置。我在联机帮助页中也没有找到任何内容...
有没有办法做到这一点?
如果有趣:我正在使用 Ubuntu 12.04 和 bash。
sudo 没有选项可以完全满足您的要求,但是您可以创建一个 shell 函数来创建一个新的 command sudok
,它将运行 sudo 命令,然后让 sudo 删除其缓存的凭据。
function sudok () { sudo "$@"; sudo -K; }
Run Code Online (Sandbox Code Playgroud)
将该行添加到您的~/.bashrc
或~/.bash_profile
使其永久化。
我很确定你只是想要sudo
一个小k
选项,
sudo -k vim ~/thefile
Run Code Online (Sandbox Code Playgroud)
它被记录为完全忽略您的缓存文件:
当与可能需要密码的命令或选项结合使用时,此选项将导致 sudo 忽略用户的缓存凭据。因此,sudo 将提示输入密码(如果安全策略需要密码)并且不会更新用户的缓存凭据。