Artikel ini membawakan anda enam kaedah untuk mengkonfigurasi pembolehubah persekitaran dalam Linux, saya harap ia akan membantu anda.
Konfigurasi pembolehubah persekitaran Linux
Apabila menyesuaikan pemasangan perisian, selalunya perlu mengkonfigurasi pembolehubah persekitaran , pelbagai kaedah konfigurasi untuk pembolehubah persekitaran disenaraikan di bawah.
Penerangan persekitaran untuk semua contoh di bawah adalah seperti berikut:
Sistem: Ubuntu 14.0
Nama pengguna: uusama
Laluan pembolehubah persekitaran MySQL perlu dikonfigurasikan : /home/ uusama/mysql/bin
Linux membaca pembolehubah persekitaran
Cara membaca pembolehubah persekitaran:
Arahan eksport memaparkan semua pembolehubah persekitaran yang ditakrifkan oleh sistem semasa
arahan $PATH echo mengeluarkan nilai pembolehubah persekitaran PATH semasa
Ini Kesan daripada melaksanakan dua arahan adalah seperti berikut
uusama@ubuntu:~export declare -x HOME="/home/uusama" declare -x LANG="en_US.UTF-8" declare -x LANGUAGE="en_US:" declare -x LESSCLOSE="/usr/bin/lesspipe %s %s" declare -x LESSOPEN="| /usr/bin/lesspipe %s" declare -x LOGNAME="uusama" declare -x MAIL="/var/mail/uusama" declare -x PATH="/home/uusama/bin:/home/uusama/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" declare -x SSH_TTY="/dev/pts/0" declare -x TERM="xterm" declare -x USER="uusama" uusama@ubuntu:~ echo $PATH /home/uusama/bin:/home/uusama/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
Pembolehubah PATH mentakrifkan laluan carian untuk menjalankan arahan boleh tambah petikan berganda atau tidak.
Kaedah konfigurasi pembolehubah persekitaran Linux satu: eksport PATH
Gunakan arahan eksport untuk mengubah suai terus nilai PATH dan konfigurasi MySQL untuk memasuki pembolehubah persekitaran:
export PATH=/home/uusama/mysql/bin:PATH # 或者把PATH放在前面 export PATH=PATH:/home/uusama/mysql/bin
Nota:
Masa keberkesanan: berkuat kuasa serta-merta
Tempoh keberkesanan: sah pada terminal semasa, tidak sah selepas tetingkap ditutup
Julat kesahihan: hanya Sah untuk pengguna semasa
Jangan lupa untuk menambah konfigurasi asal, iaitu bahagian $PATH, pada pembolehubah persekitaran yang dikonfigurasikan untuk mengelak daripada menulis ganti konfigurasi asal
Kaedah konfigurasi pembolehubah persekitaran Linux 2: vim ~/.bashrc
Konfigurasikan dengan mengubah suai fail ~/.bashrc dalam direktori pengguna:
vim ~/.bashrc # 在最后一行加上 export PATH=$PATH:/home/uusama/mysql/bin
Nota:
Masa berkesan: Ia berkuat kuasa apabila anda membuka terminal baharu dengan pengguna yang sama, atau sumber manual ~/.bashrc
Tempoh keberkesanan: Kekal
Skop keberkesanan: Hanya sah untuk pengguna semasa
Jika fail pemuatan pembolehubah persekitaran yang berikutnya menimpa definisi PATH, ia mungkin tidak berkuat kuasa
Konfigurasi pembolehubah persekitaran Linux kaedah tiga: vim ~/.bash_profile
Sama seperti mengubah suai fail ~/.bashrc, anda juga perlu menambah laluan baharu pada penghujung fail:
vim ~/.bash_profile # 在最后一行加上 export PATH=$PATH:/home/uusama/mysql/bin
Nota:
Masa berkesan: Ia akan berkuat kuasa apabila membuka terminal baharu dengan pengguna yang sama, atau sumber manual /.bash_profile
Tempoh sah: sah selama-lamanya
Skop kesahan: hanya sah untuk pengguna semasa
Jika Jika tiada fail /.bash_profile, anda boleh mengedit fail ~/.profile atau buat yang baharu
Kaedah konfigurasi pembolehubah persekitaran Linux empat: vim /etc/bashrc
Kaedah ini adalah untuk mengubah suai konfigurasi sistem, yang memerlukan hak pentadbir (seperti root) atau kebenaran menulis kepada fail:
# 如果/etc/bashrc文件不可编辑,需要修改为可编辑 chmod -v u+w /etc/bashrc vim /etc/bashrc # 在最后一行加上 export PATH=$PATH:/home/uusama/mysql/bin
Nota:
Masa berkesan: Baru dibuka Ia berkuat kuasa di terminal, atau sumber manual /etc/bashrc
Tempoh keberkesanan: sah selama-lamanya
Skop keberkesanan: sah untuk semua pengguna
Pembolehubah persekitaran Linux Kaedah konfigurasi lima: vim /etc/profile
Kaedah ini mengubah suai konfigurasi sistem dan memerlukan hak pentadbir atau kebenaran menulis untuk fail Ia serupa dengan vim /etc/bashrc:
# 如果/etc/profile文件不可编辑,需要修改为可编辑 chmod -v u+w /etc/profile vim /etc/profile # 在最后一行加上 export PATH=$PATH:/home/uusama/mysql/bin
Nota:
Masa berkesan: Buka terminal baharu untuk. berkuat kuasa, atau sumber /etc/profile secara manual untuk berkuat kuasa
Tempoh keberkesanan: Kekal
Skop Berkesan: Sah untuk semua pengguna
Persekitaran Linux kaedah konfigurasi pembolehubah enam: vim /etc/environment
Kaedah ini adalah untuk mengubah suai fail konfigurasi persekitaran sistem , memerlukan hak pentadbir atau kebenaran menulis kepada fail:
# 如果/etc/bashrc文件不可编辑,需要修改为可编辑 chmod -v u+w /etc/environment vim /etc/profile # 在最后一行加上 export PATH=$PATH:/home/uusama/mysql/bin注意事项:
Masa keberkesanan: Buka terminal baharu untuk berkuat kuasa, atau sumber /etc/environment secara manual untuk berkuat kuasa
Tempoh keberkesanan: Kekal
Skop berkesan: sah untuk semua pengguna
Analisis prinsip pemuatan pembolehubah persekitaran Linux
Pembolehubah persekitaran disenaraikan di atas Pelbagai kaedah konfigurasi, jadi bagaimanakah Linux memuatkan konfigurasi ini? Dalam urutan apakah ia dimuatkan?
Tertib pemuatan khusus akan menyebabkan takrifan pembolehubah persekitaran dengan nama yang sama ditimpa atau tidak berkuat kuasa.
Klasifikasi pembolehubah persekitaran
Pembolehubah persekitaran boleh dibahagikan kepada pembolehubah persekitaran yang ditentukan pengguna dan pembolehubah persekitaran peringkat sistem.
Fail definisi pembolehubah persekitaran peringkat pengguna: /.bashrc, /.profile (beberapa sistem: /.bash_profile)
Fail definisi pembolehubah persekitaran peringkat sistem: /etc/bashrc, /etc / profile (beberapa sistem ialah: /etc/bash_profile), /etc/environment
Selain itu, dalam pembolehubah persekitaran pengguna, sistem akan membaca fail /.bash_profile (atau ~/.profile) terlebih dahulu. Jika tiada fail sedemikian Kemudian baca ~/.bash_login, dan kemudian baca ~/.bashrc berdasarkan kandungan fail ini.
Cara menguji susunan pemuatan pembolehubah persekitaran Linux
为了测试各个不同文件的环境变量加载顺序,我们在每个环境变量定义文件中的第一行都定义相同的环境变量UU_ORDER,该变量的值为本身的值连接上当前文件名称。
需要修改的文件如下:
/etc/environment
/etc/profile
/etc/profile.d/test.sh,新建文件,没有文件夹可略过
/etc/bashrc,或者/etc/bash.bashrc
/.bash_profile,或者/.profile
~/.bashrc
在每个文件中的第一行都加上下面这句代码,并相应的把冒号后的内容修改为当前文件的绝对文件名。
export UU_ORDER="$UU_ORDER:~/.bash_profile"
修改完之后保存,新开一个窗口,然后echo $UU_ORDER观察变量的值:
uusama@ubuntu:~echoUU_ORDER $UU_ORDER:/etc/environment:/etc/profile:/etc/bash.bashrc:/etc/profile.d/test.sh:~/.profile:~/.bashrc
可以推测出Linux加载环境变量的顺序如下:
/etc/environment
/etc/profile
/etc/bash.bashrc
/etc/profile.d/test.sh
~/.profile
~/.bashrc
Linux环境变量文件加载详解
由上面的测试可容易得出Linux加载环境变量的顺序如下,:
系统环境变量 -> 用户自定义环境变量 /etc/environment -> /etc/profile -> ~/.profile
打开/etc/profile文件你会发现,该文件的代码中会加载/etc/bash.bashrc文件,然后检查/etc/profile.d/目录下的.sh文件并加载。
# /etc/profile: system-wide .profile file for the Bourne shell (sh(1)) # and Bourne compatible shells (bash(1), ksh(1), ash(1), ...). if [ "PS1" ]; then if [ "BASH" ] && [ "BASH" != "/bin/sh" ]; then # The file bash.bashrc already sets the default PS1. # PS1='\h:\w\$ ' if [ -f /etc/bash.bashrc ]; then . /etc/bash.bashrc fi else if [ "`id -u`" -eq 0 ]; then PS1='# ' else PS1=' ' fi fi fi if [ -d /etc/profile.d ]; then for i in /etc/profile.d/*.sh; do if [ -r i ]; then .i fi done unset i fi
其次再打开~/.profile文件,会发现该文件中加载了~/.bashrc文件。
# if running bash if [ -n "BASH_VERSION" ]; then # include .bashrc if it exists if [ -f "HOME/.bashrc" ]; then . "HOME/.bashrc" fi fi # set PATH so it includes user's private bin directories PATH="HOME/bin:HOME/.local/bin:PATH"
从~/.profile文件中代码不难发现,/.profile文件只在用户登录的时候读取一次,而/.bashrc会在每次运行Shell脚本的时候读取一次。
一些小技巧
可以自定义一个环境变量文件,比如在某个项目下定义uusama.profile,在这个文件中使用export定义一系列变量,然后在~/.profile文件后面加上:sourc uusama.profile,这样你每次登陆都可以在Shell脚本中使用自己定义的一系列变量。
也可以使用alias命令定义一些命令的别名,比如alias rm="rm -i"(双引号必须),并把这个代码加入到~/.profile中,这样你每次使用rm命令的时候,都相当于使用rm -i命令,非常方便。
相关推荐:《Linux视频教程》
Atas ialah kandungan terperinci 6 cara untuk mengkonfigurasi pembolehubah persekitaran Linux, disyorkan untuk dikumpulkan!. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!