用大写字母输入 Linux 命令,实现以 sudo 用户权限运行
程序员文章站
2022-05-07 21:24:36
我们知道,一些 Linux 命令是要通过 sudo 权限才能运行的,这需要我们每次使用这些命令时在前面加一个 sudo ,十分繁琐。今天给大家介绍一个好用的工具 ,它只需要我们用大写字母键入 Linux 命令,然后它就会自动地以 sudo 权限运行,非常方便不是吗? 安装 SUDO 首先,使用 命令 ......
我们知道,一些 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
工具,只要你自己用得舒服就好。
-----------------
我是良许,世界500强外企 linux 开发工程师,专业生产 linux 干货。欢迎关注我的公众号「良许linux」,里面分享了 linux入门、基础、进阶 等系列教程,同时也有 git、vim、开源项目 等技术干货。公众号后台回复「1024」获取最新最全的技术资料,回复「入群」进入高手如云技术交流群。