以大写字母输入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

以大写字母输入Linux命令将其作为sudo用户运行

它还会备份~/.bashrc并将其保存为~/.bashrc.old。 如果发生灾难性的错误,你可以恢复它。

最后,使用命令更新更改:

$ source ~/.bashrc

以大写字母输入Linux命令将其作为sudo用户运行

现在,以大写字母键入Linux命令以将它们作为sudo用户运行

通常,我们执行需要sudo/root权限的Linux命令,如下所示。

$ sudo mkdir /linuxidc

对? 是! 上面的命令将在根(/)中创建名为“linuxidc”的目录。 让我们使用Ctrl + c取消此命令。

安装SUDO后,您可以在没有sudo的情况下以大写形式键入任何Linux命令并运行它们。 因此,您可以运行上面的命令,如下所示:

$ MKDIR /linuxidc
$ TOUCH /linuxidc/linuxidc.txt
$ LS /linuxidc

如下图:

以大写字母输入Linux命令将其作为sudo用户运行

请注意,它不会绕过sudo密码。 您仍然需要键入sudo密码才能执行给定的命令。 它只会有助于避免在每个命令前面键入“sudo”。

当然,输入“sudo”只需几秒钟,所以这不是什么大问题。 我必须告诉这是一个有趣且无用的项目来消磨时间。 如果你不喜欢它,那就去学习一些有用的东西吧。 如果你喜欢它,试一试,祝你玩得开心!

相关推荐