以大写字母键入Linux命令以Sudo用户身份运行它们

时间:2020-03-21 11:48:29  来源:igfitidea点击:

顾名思义,每当我们以大写字母键入Linux命令时,SUDO实用程序都将以sudo用户身份运行它们!这意味着,我们无需在要运行的Linux命令的前面键入“ sudo”。

在Linux中安装SUDO

请注意:

在安装此代码(或者任何实用程序)之前,请查看源代码(最后提供了链接),并查看其中是否包含可疑/恶意代码来损害系统。
在VM中进行测试。
如果我们喜欢或者发现它有用,则可以在个人/生产系统中使用它。

Git克隆SUDO存储库:

$git clone https://github.com/jthistle/SUDO.git

此命令将克隆SUDO GIT存储库的内容,并将其保存在当前工作目录中名为“ SUDO”的目录中。

Cloning into '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
Unpacking objects: 100% (42/42), done.

切换到SUDO目录:

$cd SUDO/

并且,使用命令安装它:

$./install.sh

该命令将在~/.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 Commands以Sudo用户身份运行它们

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

$sudo mkdir /theitroad

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

安装SUDO后,我们可以使用大写字母键入任何Linux命令,而无需sudo并运行它们。
因此,我们可以像下面这样运行上面的命令:

$MKDIR /theitroad
$TOUCH /theitroad/test.txt
$LS /theitroad

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