是root用戶還是普通用戶
創(chuàng)新互聯(lián)公司主營(yíng)始興網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營(yíng)網(wǎng)站建設(shè)方案,app軟件開發(fā),始興h5微信小程序搭建,始興網(wǎng)站營(yíng)銷推廣歡迎始興等地區(qū)企業(yè)咨詢
如果是root用戶下,檢查這些命令是否還在。一般在/usr/bin ? /usr/sbin。
在/root用戶下的.profile 文件中加上 ?path=/usr/bin;/usr/sbin ?,然后source ?.profile,使變量生效,然后測(cè)試命令是否可用
如果是普通用戶,需要在普通用戶的home目錄下設(shè)置.profile
不是test失效,?而是?test?命令沒(méi)有得到足夠的參數(shù).
原因是shell?在解釋命令時(shí),?會(huì)"先"對(duì)命令行進(jìn)行擴(kuò)展,?使用變量實(shí)際的值替換到命令行中,?然后再執(zhí)行命令.
上面unset?name后,?$name的值為空,?執(zhí)行完命令行擴(kuò)展后,?實(shí)際執(zhí)行的是
test?-z??echo?"empty"?||?echo?"not?empty"
此時(shí),?shell?實(shí)際傳給test?命令的參數(shù)只有一個(gè)?"-z",??這種情況下,?test?的退出碼總是0
所以在執(zhí)行的時(shí)候,?使用雙引號(hào)將變量名引起來(lái)是個(gè)好習(xí)慣,?這樣命令行擴(kuò)展后實(shí)際傳給test的參數(shù)為2個(gè)(盡管第2個(gè)只是一個(gè)空字符串)
關(guān)于shell?的命令行擴(kuò)展,?除了變量,?還有一些其它的工作,
見下例: a.sh
#!/bin/bash
echo?$#
echo?$@
執(zhí)行 ./a.sh a{1,2,3} 輸出為
./a.sh a{1,2,3}
3
a1 a2 a3
看起來(lái)是傳給命令行一個(gè)參數(shù) a{1,2,3}, 實(shí)際上執(zhí)行完shell 擴(kuò)展后, 傳給a.sh 的參數(shù)是 a1 a2 a3 共3個(gè)參數(shù).
關(guān)于shell 擴(kuò)展的更多細(xì)節(jié), 詳見bash?的man?page的?EXPANSION?這一節(jié).
/sbin/ifconfig
不過(guò)有的系統(tǒng)你只能查看,不能設(shè)置。設(shè)置需要 root 權(quán)限。
一般的系統(tǒng)默認(rèn)普通用戶沒(méi)有到 /sbin/ 和 /usr/sbin 的 PATH 環(huán)境變量。而 ifconfig 在 /sbin 里面。
sudo 是需要修改設(shè)置的,默認(rèn)我記得 centos 沒(méi)有設(shè)置用戶可以 sudo 。你可以看看 /etc/sudoer* 的配置文件,里面取消注釋 wheel 或者 sudo 組的設(shè)置,之后把想可以 sudo 的用戶 id 加入 wheel 組即可?;蛘咧苯釉O(shè)置 id 的 sudo 設(shè)置。
是root用戶還是普通用戶
如果是root用戶下,檢查這些命令是否還在。一般在/usr/bin /usr/sbin。
在/root用戶下的.profile 文件中加上 path=/usr/bin;/usr/sbin ,然后source .profile,使變量生效,然后測(cè)試命令是否可用
如果是普通用戶,需要在普通用戶的home目錄下設(shè)置.profile