⑴ 環境變數-linux
我們經常在shell中輸入一個命令然後就開始執行,但是shell是如何從 電腦裡面找到這條指令的呢?
shell是通過 環境變數PATH 來進行 搜索 的,同樣的在win裡面也有這個PATH環境變數,這個PATH保存了shell中執行的命令的搜索路徑
通常會得到:
我們可以看到,基本都是bin或者sbin路徑,這種路徑下都是二進制可執行文件。
系統會按照path中設定的路徑按照順序依次到目錄中去查找,如果存在同名的命令,則執行先找到的那個。
如果我們有一個自定義的路徑 /home/user/mybin 我們想把這個路徑添加到PATH以便於直接在shell中執行這個命令,添加方式:
但是到這里還有一個問題:我們添加的這個路徑只在當前shell下有效。
如何是添加的環境變數全局有效?
在每個用戶的home目錄中有一個shell每次啟動時會默認執行一個配置腳本,以初始化環境,包括添加一些用戶自定義環境變數等等。
這個配置文件是 .zshrc 相應的bash配置文件為 .bashrc
我們只需要修改.zshrc就可以了
上述命令中 >> 表示將輸出以追加的方式重新定向到一個文件中
前面提到的 > 是以覆蓋的方式重定向
讓環境變數立刻生效:
⑵ linux在安裝ffmpeg時怎麼將/usr/local/ffmpeg/lib目錄設置到LD_LIBRARY_PATH環境變數
1、下載ffmpeg。
2、解壓縮 tar -zxvf ffmpeg.tar.gz
3、編輯profile文件:
vi /etc/profile
在文件末尾加上兩句話:
export FFMPEG_HOME=/usr/local/ffmpeg
export PATH=$FFMPEG_HOME/bin:$PATH
4、配置安裝路徑之類的:
./configure --enable-shared --prefix=/usr/local/ffmpeg
--enable-shared 參數據說是允許其編譯產生動態庫,在以後的編程中要用到這個幾個動態庫。
如果出現異常,提示因為缺少yasm,需要添加參數,再執行以下命令:
./configure --enable-shared --disable-yasm --prefix=/usr/local/ffmpeg
如果執行結果不對,可以根據提示信息,並查看幫助,解決問題
./configure --help
5、編譯安裝
make
make install
6、安裝之後在/usr/local/ffmpeg會看到有三個目錄
bin 執行文件目錄
lib 靜態,動態鏈接庫目錄
include 編程用到的頭文件
7、為了防止執行程序找不到庫文件,
可以將/usr/local/ffmpeg/lib目錄設置到LD_LIBRARY_PATH環境變數
8、若出現error while loading shared libraries: libavdevice.so.52的錯誤
修改/etc/ld.so.conf 在最後一行加上/usr/local/ffmpeg/lib
ldconfig -v
並修改 /usr/local/ffmpeg/lib目錄下的文件許可權為777
⑶ linux環境變數怎麼設置
通過你的描述,環境變數的設置可以通過如下4種方式來進行更改設置:
查看PATH:echo $PATH
這里以添加mongodb server為例
修改方法一:
修改 export PATH=/usr/local/mongodb/bin:$PATH
//配置完後可以通過echo $PATH查看配置結果。
生效方法:立即生效
有效期限:臨時改變,只能在當前的終端窗口中有效,當前窗口關閉後就會恢復原有的path配置
用戶局限:僅對當前用戶
修改方法二:
通過修改.bashrc文件:vim ~/.bashrc
//在最後一行添上:export PATH=/usr/local/mongodb/bin:$PATH
生效方法:(有以下兩種)
1、關閉當前終端窗口,重新打開一個新終端窗口就能生效
2、輸入「source ~/.bashrc」命令,立即生效
有效期限:永久有效
用戶局限:僅對當前用戶
修改方法三:
通過修改profile文件:vim /etc/profile/export PATH
//找到設置PATH的行,添加export PATH=/usr/local/mongodb/bin:$PATH
生效方法:系統重啟
有效期限:永久有效
用戶局限:對所有用戶
以上就是linux環境變數設置的三種方式,希望能幫到你。。。。。。
⑷ 如何讓linux載入當前目錄的動態庫
linux 載入當前目錄的動態庫的方法是:設置合適的環境變數LD_LIBRARY_PATH。x0dx0a設置方法有以下三種:x0dx0ax0dx0a1、臨時修改,log out之後就失效x0dx0a在terminal中執行:export LD_LIBRARY_PATH=./x0dx0ax0dx0a2、讓當前帳號以後都優先載入當前目錄的動態庫x0dx0a修改~/.bash_profile在文件末尾加上兩塵或殲行:派沖 LD_LIBRARY_PATH=./ 和 export LD_LIBRARY_PATH x0dx0ax0dx0a3、讓所有帳號從此都團粗優先載入當前目錄的動態庫x0dx0a修改/etc/profile在文件末尾加上兩行: LD_LIBRARY_PATH=./ 和 export LD_LIBRARY_PATH