• 用大写字母输入 Linux 命令,实现以 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」获取最新最全的技术资料,回复「入群」进入高手如云技术交流群。

  • 相关阅读:
    字节和字符,对信息进行编码
    关于TCP的可靠性
    TCP和流
    Socket:流,TCP连接,TCP可靠性概述
    C#中的泛型 Part1
    C# 泛型理解0
    2010 Stanford Local ACM Programming ContestH解题报告
    母函数模板
    poj 1385Lifting the Stone解题报告
    poj 1015Jury Compromise解题报告
  • 原文地址:https://www.cnblogs.com/yychuyu/p/11898152.html
Copyright © 2020-2023  润新知