一般來(lái)說(shuō),sudo會(huì)忽略通過.bashrc文件、.bash_aliases文件或者alias命令設(shè)置的別名命令(aliased commands)。
比如,我們經(jīng)常將ll用作ls -lh命令的別名。然后,我們輸入ll,終端將會(huì)返回一個(gè)關(guān)于當(dāng)前目錄的長(zhǎng)列表。但是,當(dāng)我們輸入sudo ll時(shí),終端將會(huì)返回:
$sudoll
=>sudo:ll:commandnotfound
解決方案
我們給shutdown命令創(chuàng)建一個(gè)別名,當(dāng)普通用戶運(yùn)行的時(shí)候嘗試輸入這個(gè)別名去關(guān)機(jī),我們可以看到系統(tǒng)不會(huì)關(guān)機(jī)。想要運(yùn)行/sbin/shutdown需要root權(quán)限,然而sudo會(huì)完全忽略shutdown的這個(gè)別名。解決辦法是,我們需要添加另一個(gè)別名:
aliassudo='sudo'
sudo后面的那個(gè)空格將會(huì)告訴bash,去檢查跟在空格后面的命令是否也是一個(gè)別名。bash手冊(cè)(通過man bash查看)上面是這么描述的:
If the last character of the alias value is a blank, then the next command word following the alias is also checked for alias expansion. 如果別名值的最后一個(gè)字符是空格,將會(huì)檢查”跟在別名后的下一個(gè)命令”是否也是別名擴(kuò)展。
下面是我機(jī)器.bash_aliases文件中的一些別名設(shè)置:
#Shortcuts
aliasll='ls-lh'
aliasla='ls-lhA'
aliasl='ls'
aliasc='clear'
aliasx='exit'
aliasq='exit'
#Don'trunshutdownifrtorrentisrunning-aslongasthere'sascreenwith"tor"initsname,shutdownwon'trun(unlessyoucall/sbin/shutdown,orunaliasit)
aliasshutdown='/home/james/scripts/safe.shutdown.sh'
#Whenusingsudo,usealiasexpansion(otherwisesudoignoresyouraliases)
aliassudo='sudo'
審核編輯 :李倩
-
終端
+關(guān)注
關(guān)注
1文章
1155瀏覽量
30004 -
Shutdown
+關(guān)注
關(guān)注
0文章
20瀏覽量
50520
原文標(biāo)題:sudo后使用別名
文章出處:【微信號(hào):magedu-Linux,微信公眾號(hào):馬哥Linux運(yùn)維】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
Linux設(shè)置永久別名alias的方法
![Linux設(shè)置永久<b class='flag-5'>別名</b>alias的方法](https://file.elecfans.com/web2/M00/72/E9/poYBAGNXlA-Abq7iAAAO6CAnnBE807.png)
CAD快捷鍵與CAD命令別名的區(qū)別
位帶及位帶別名區(qū)的關(guān)系
在 Linux 中運(yùn)行 sudo 命令不需要密碼
如何解決sudo與重定向的權(quán)限拒絕的問題
如何使用sudo命令以及選項(xiàng)
值得考慮的4個(gè)最佳Linux sudo命令替代方案
Linux中root和sudo的用法與區(qū)別
Linux命令su和sudo的區(qū)別
首個(gè)Rust版sudo發(fā)布!
![首個(gè)Rust版<b class='flag-5'>sudo</b>發(fā)布!](https://file1.elecfans.com/web2/M00/A1/43/wKgZomTxmmmAWUIHAAAGMumvpgw935.png)
什么是sudo rm -rf?為什么這個(gè)命令如此危險(xiǎn)?
ROS主控如何創(chuàng)建設(shè)備別名
![ROS主控如何創(chuàng)建設(shè)備<b class='flag-5'>別名</b>](https://file1.elecfans.com/web2/M00/AE/E5/wKgaomVXOb6AWBxvAABKnGt2XHs643.jpg)
su與sudo命令介紹及主要用法
微軟正式發(fā)布適用于Windows的Sudo
![微軟正式發(fā)布適用于Windows的<b class='flag-5'>Sudo</b>](https://file1.elecfans.com/web2/M00/C4/EA/wKgZomX46KuADcLrAAAuXLn2AbA511.png)
評(píng)論