sudo 这个命令大家肯定不陌生,在一些场合里,我们需要管理员权限去运行命令,此时就需要加上 sudo 。但是,如果这样的场合比较多,那么一直加 sudo 就会显得有些繁琐。

2023年 6月 23日 发表评论
腾讯云正在大促:点击直达 阿里云超级红包:点击领取
免费/便宜/高性价比服务器汇总入口(已更新):点击这里了解

sudo 这个命令大家肯定不陌生,在一些场合里,我们需要管理员权限去运行命令,此时就需要加上 sudo 。但是,如果这样的场合比较多,那么一直加 sudo 就会显得有些繁琐。

sudo 这个命令大家肯定不陌生,在一些场合里,我们需要管理员权限去运行命令,此时就需要加上 sudo 。但是,如果这样的场合比较多,那么一直加 sudo 就会显得有些繁琐。

今天给大家介绍一个好用的工具,大家在使用这个工具后,只要以大写的方式键入你想要输入的 Linux 命令,然后 Linux 系统就会自动以 sudo 权限执行这个命令。使用这个工具,可以让我们少敲很多按键,摆脱繁琐,提高效率。这个工具就是 SUDO ,没错,就是大写的 sudo

安装 SUDO

这个工具已经开源在 GitHub 上,我们需要使用 Git clone 命令下载 SUDO 源码。

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

执行完上面的命令之后,SUDO 工具的源码就会被下载到本地仓库中,保存在当前路径下名为 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.

然后,再使用 cd 命令切换到 SUDO 目录中:

cd SUDO/

再使用以下命令安装 SUDU 工具。

$ ./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 的改动生效。

source ~/.bashrc

输入大写字母的命令,以 sudo 用户运行

上面的配置都做完之后,我们就可以正常使用 SUDO 工具了。下面做一个小小的测试。

一般来讲,在 Linux 系统根目录下创建目录时,我们都需要在命令前使用 sudo ,比如:

$ sudo mkdir /test_dir

安装 SUDO 后,在需要敲 sudo 的场合,我们可以直接用大写的形式输入该命令,就会实现一样的效果,如下所示。

$ MKDIR /test_dir
$ TOUCH /ostechnix/test.txt
$ LS /ostechnix

Tips,SUDO 不会绕过 sudo 密码,它只是自动帮我们加了 sudo ,在需要输入密码的场合依然需要输入密码才能执行给定的命令。

当然,也有人觉得说,我在命令前自己输入 sudo 也挺舒服的啊,为什么要用这个工具?工具仅仅是工具而已,自己如何习惯如何来啦~

本文来源:www.lxlinux.net/run-command-as-sudo-with-upper-capital.html,若引用不当,请联系修改。

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: