iT邦幫忙

2022 iThome 鐵人賽

DAY 24
2
Software Development

林姓商人與指令操作的秘密—談 Linux command line interface系列 第 24

Day 24:環境變數的操作:printenv、export、source

  • 分享至 

  • xImage
  •  

會了這麼多神奇的指令,要更深入的學習指令的應用

對於指令的環境,要有一定的認識才行

今天,我們就來跟大家分享怎麼認識自己運作的環境!

要看環境變數的話,可以使用 printenv

NAME
       printenv - print all or part of environment

在 AWS 裡面輸入的話,會看到類似下面的畫面,移除一些不重要的資訊以及機器位置的資訊:

printenv

XDG_SESSION_ID=89148
TERM=linux
SHELL=/bin/bash
HISTSIZE=1000
USER=ec2-user
MAIL=/var/spool/mail/ec2-user
PATH=/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/ec2-user/.local/bin:/home/ec2-user/bin
PWD=/home/ec2-user
LANG=en_US.UTF-8
MODULEPATH=/usr/share/Modules/modulefiles:/etc/modulefiles
LOADEDMODULES=
HISTCONTROL=ignoredups
SHLVL=1
HOME=/home/ec2-user
LOGNAME=ec2-user
MODULESHOME=/usr/share/Modules
LESSOPEN=||/usr/bin/lesspipe.sh %s
XDG_RUNTIME_DIR=/run/user/1000
BASH_FUNC_module()=() {  eval `/usr/bin/modulecmd bash $*`
}
_=/usr/bin/printenv

這邊就是一開始設置的環境設定。對指令來說,可以透過輸入 $ 來使用這些環境設定的參數

echo $LANG
en_US.UTF-8

這些環境變數寫在哪呢?我們可以看看 .bash_profile 這個檔案,這是專屬這個使用者的環境設置檔案

# .bash_profile

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi

# User specific environment and startup programs

PATH=$PATH:$HOME/.local/bin:$HOME/bin

export PATH

這邊我們可以看到,調整了 PATH 這個參數,並且 export 出去使其生效。

如果時常開發程式的人,應該對這個環境參數的設置很熟悉,因為通常開發程式的某個階段,就是會設置這個變數,來讓程式執行時,能呼叫正確的執行檔。

要調整環境變數,我們可以編輯這個檔案,然後執行 source

source ~/.bashrc

然後就會生效了。

這邊要特別注意!不要輸入錯誤的檔案名稱,或者寫入錯誤的 PATH 值,以免一不小心蓋掉了整個 PATH的內容。要是如此,可能會陷入連 cd 都無法執行的慘況,最後只能重新開一台機器!

今天有關環境變數的部分,就分享到這裡,我們明天見!


上一篇
Day 23:利用指令組合自動關閉進程:awk、xargs
下一篇
Day 25:透過指令安裝需要的套件:yum、emacs
系列文
林姓商人與指令操作的秘密—談 Linux command line interface30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言