用大寫(xiě)字母輸入Linux命令以將其作為sudo用戶運(yùn)行
我非常喜歡 Linux 社區(qū)的原因是他們創(chuàng)建了很多有趣的項(xiàng)目,你很少能在任何其他操作系統(tǒng)中找到它們。不久前,我們看了一個(gè)名為 Hollywood 的有趣項(xiàng)目,它在類 Ubuntu 系統(tǒng)將終端變成了好萊塢技術(shù)情景劇的黑客界面。還有一些其他工具,例如 cowsay
、fortune
、sl
和 toilet
等,用來(lái)消磨時(shí)間自?shī)首詷?lè)!它們可能沒(méi)有用,但這些程序娛樂(lè)性不錯(cuò)并且使用起來(lái)很有趣。今天,我偶然發(fā)現(xiàn)了另一個(gè)名為 SUDO
的類似工具。正如名字暗示的那樣,你無(wú)論何時(shí)用大寫(xiě)字母輸入 Linux 命令,SUDO
程序都會(huì)將它們作為 sudo 用戶運(yùn)行!這意味著,你無(wú)需在要運(yùn)行的 Linux 命令前面輸入 sudo
。很酷,不是么?
安裝 SUDO
提醒一句:
在安裝這個(gè)程序(或任何程序)之前,請(qǐng)查看源代碼(最后給出的鏈接),并查看是否包含會(huì)損害你的系統(tǒng)的可疑/惡意代碼。在 VM 中測(cè)試它。如果你喜歡或覺(jué)得它很有用,你可以在個(gè)人/生產(chǎn)系統(tǒng)中使用它。
用 Git 克隆 SUDO
倉(cāng)庫(kù):
$ git clone https://github.com/jthistle/SUDO.git
此命令將克隆 SUDO GIT 倉(cāng)庫(kù)的內(nèi)容,并將它們保存在當(dāng)前目錄下的 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
它還會(huì)備份你的 ~/.bashrc
并將其保存為 ~/.bashrc.old
。如果有重大錯(cuò)誤,你可以恢復(fù)它。
最后,使用命令更新更改:
$ source ~/.bashrc
現(xiàn)在,用大寫(xiě)字母中輸入 Linux 命令,將它們作為 Sudo 用戶運(yùn)行
通常我們像下面那樣執(zhí)行需要 sudo/root 權(quán)限的命令。
$ sudo mkdir /ostechnix
對(duì)么?沒(méi)錯(cuò)!上面的命令將在根目錄(/
)中創(chuàng)建名為 ostechnix
的目錄。讓我們使用 Ctrl + c
取消。
一旦安裝了 SUDO
,你就可以在不使用 sudo 的情況下輸入任何大寫(xiě) Linux 命令并運(yùn)行它們。因此,你可以像下面那樣運(yùn)行上面的命令:
$ MKDIR /ostechnix
$ TOUCH /ostechnix/test.txt
$ LS /ostechnix
用大寫(xiě)字母輸入 Linux 命令以將其作為 sudo 用戶運(yùn)行
請(qǐng)注意它無(wú)法繞過(guò) sudo 密碼。你仍然需要鍵入 sudo
密碼才能執(zhí)行給定的命令。它只會(huì)有助于避免在每個(gè)命令前面輸入 sudo
。