为了账号安全,请及时绑定邮箱和手机立即绑定

用大写字母输入 Linux 命令,实现以 sudo 用户权限运行

标签:
Linux

我是良许,世界500强外企 Linux 开发工程师,专业生产 Linux 干货。欢迎关注「良许Linux」,里面分享了 Linux入门、基础、进阶 等系列教程,同时也有 Git、Vim、开源项目 等技术干货。

我们知道,一些 Linux 命令是要通过 sudo 权限才能运行的,这需要我们每次使用这些命令时在前面加一个 sudo ,十分繁琐。今天给大家介绍一个好用的工具 SUDO ,它只需要我们用大写字母键入 Linux 命令,然后它就会自动地以 sudo 权限运行,非常方便不是吗?

安装 SUDO

首先,使用 Git clone 命令下载 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/

再使用以下命令安装 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 ,以便于意外发生时可以恢复。

最后,使用以下命令生效对 ~/.bashrc 文件的更改。

$ source ~/.bashrc

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

一般来说,在根目录下创建目录时,我们需要在命令前使用 sudo ,如下:

$ sudo mkdir /test_dir

安装 SUDO 后,对于需要使用 sudo 的命令我们可以直接用大写的形式实现相同的效果,如下所示。

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

注意,SUDO 不会绕过 sudo 密码,我们仍然需要输入 sudo 密码才能执行给定的命令。

当然,如果你觉得在命令前面输入 sudo 也完全可以接受,你也可以不使用SUDO 工具,只要你自己用得舒服就好。

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
Linux系统工程师
手记
粉丝
81
获赞与收藏
268

关注作者,订阅最新文章

阅读免费教程

  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消