以大写字母输入Linux命令将其作为sudo用户运行
我非常喜欢Linux社区的原因之一是,他们创建了许多有趣的项目,而这些项目在任何其他合适的操作系统中都很难找到。不久前,我们研究了一个名为“Hollywood”的有趣项目,它将终端变成了类似Ubuntu系统的好莱坞技术情节剧黑客界面。可用的其他实用程序很少,例如 cowsay, fortune, sl 和 toilet(!)等,来消磨你的时间,让你娱乐!它们可能没有什么用处,但是这些实用程序确实很有趣。
今天,我偶然发现了另一个类似的实用程序“SUDO”。顾名思义,每当您键入大写字母的Linux命令时,SUDO实用程序将以SUDO用户的身份运行它们!这意味着,您不需要在将要运行的Linux命令前输入“sudo”。是不是很酷?
安装SUDO
警告:
在安装此(或任何实用程序)之前,请查看源代码(文末给出的链接),并查看是否包含危害系统的可疑/恶意代码。在VM中测试它。如果你喜欢或者觉得它有用,你可以在你的个人/生产系统中使用它。
Git克隆SUDO库:
输出如下:
正克隆到 'SUDO'...
remote: Enumerating objects: 42, done.
remote: Counting objects: 100% (42/42), done.
remote: Compressing objects: 100% (29/29), done.
remote: Total 42 (delta 17), reused 30 (delta 12), pack-reused 0
展开对象中: 100% (42/42), 完成.
此命令将克隆SUDO GIT存储库的内容,并将它们保存在当前工作目录中名为“SUDO”的目录中。
切换到SUDO目录:
并使用命令安装它:
Now run: source /home/linuxidc/.bashrc
该命令将在~/.bashrc文件中添加以下条目:
[...]
# SUDO - shout at bash to su commands
# Distributed under GNU GPLv2, @jthistle on github
shopt -s expand_aliases
IFS_=${IFS}
IFS=":" read -ra PATHS <<< "$PATH"
for i in "${PATHS[@]}"; do
for j in $( ls "$i" ); do
if [ ${j^^} != $j ] && [ $j != "sudo" ]; then
alias ${j^^}="sudo $j"
fi
done
done
alias SUDO='sudo $(history -p !!)'
IFS=${IFS_}
# end SUDO
它还会备份~/.bashrc并将其保存为~/.bashrc.old。 如果发生灾难性的错误,你可以恢复它。
最后,使用命令更新更改:
$ source ~/.bashrc
现在,以大写字母键入Linux命令以将它们作为sudo用户运行
通常,我们执行需要sudo/root权限的Linux命令,如下所示。
$ sudo mkdir /linuxidc
对? 是! 上面的命令将在根(/)中创建名为“linuxidc”的目录。 让我们使用Ctrl + c取消此命令。
安装SUDO后,您可以在没有sudo的情况下以大写形式键入任何Linux命令并运行它们。 因此,您可以运行上面的命令,如下所示:
$ MKDIR /linuxidc
$ TOUCH /linuxidc/linuxidc.txt
$ LS /linuxidc
如下图:
请注意,它不会绕过sudo密码。 您仍然需要键入sudo密码才能执行给定的命令。 它只会有助于避免在每个命令前面键入“sudo”。
当然,输入“sudo”只需几秒钟,所以这不是什么大问题。 我必须告诉这是一个有趣且无用的项目来消磨时间。 如果你不喜欢它,那就去学习一些有用的东西吧。 如果你喜欢它,试一试,祝你玩得开心!