覆蓋原先的PATH導致命令失效提示command not found的解決方法
一個同事找我?guī)退ㄎ?,為什么他的LINUX服務器很多的命令都使用不了,提示(command not found),而且更要命的是很多系統(tǒng)服務,腳本都跑不了。問了下,你之前做了些什么操作呢? 他說也做什么操作啊,只不過在/etc/profile文件里面增加了export PATH,又問,你怎么設置的呢? 得到的答案是:
[root@localhost ~]# vim /etc/profile export PATH=/usr/lib/jenkins/ [root@localhost ~]# source /etc/profile
他說只不過添加了jenkins的默認工作目錄,然后用source讓配置文件生效。其實問題恰恰就出在這里!
PATH是系統(tǒng)環(huán)境路徑,系統(tǒng)的所有命令,腳本執(zhí)行都是按照PATH的路徑來搜索的。但是如果export PATH=/usr/lib/jenkins/
,就拿之前系統(tǒng)設置的目錄,比如(/bin/; /sbin等存放系統(tǒng)命令的目錄)全部覆蓋了,變成了jenkins工作命令,而jenkins目錄下肯定是找不到ls, pwd, cd等系統(tǒng)命令的,結果造成所有的命令,腳本,服務都跑不了,這就是造成這個的主要原因!
真正系統(tǒng)PATH要如何設置呢?
如果是短期設置的話:
export PATH=$PATH:/usr/lib/jenkins/
如果是長期設置的話:
[root@localhost ~]# vim /etc/profile export PATH=$PATH:/usr/lib/jenkins/ [root@localhost ~]# source /etc/profile
這樣的話,就是在原先的設置中添加新的搜索路徑,而不會覆蓋原先的PATH了。
總結
以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對腳本之家的支持。如果你想了解更多相關內容請查看下面相關鏈接
相關文章
詳解輕巧AMH虛擬主機面板安裝使用和GCE云空間搭建網站實例
這篇文章主要介紹了輕巧AMH虛擬主機面板安裝使用和GCE云空間搭建網站實例,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-07-07在Ubuntu 14 上安裝 Nginx-RTMP 流媒體服務器的教程
RTMP流媒體協(xié)議是 一套 Adobe 開發(fā)的音頻視頻實時傳輸協(xié)議;nginx-rtmp 是一個基于nginx的 RTMP服務模塊,開源,免費,接下來通過本文給大家介紹在Ubuntu 14 上安裝 Nginx-RTMP 流媒體服務器,需要的朋友可以參考下2019-11-11