第5節 環境變量與文件查找
《Linux 基礎入門(新版)》學習筆記
附實驗樓地址:https://www.shiyanlou.com/courses/1
一、環境變量
-
declare
聲明或顯示shell變量;
$ declare tmp=liming //創建 $ echo $tmp //顯示 $ liming $ unset tmp //刪除

- Shell 程序也作為一個進程運行在操作系統之上,而我們在 Shell 中運行的大部分命令都將以 Shell 的子進程的方式運行。
- 三個與環境變量相關的命令:
set // 當前Shell所有變量env // 當前用戶相關export // 從Shell中導出環境變量的變量

- 關于哪些變量是環境變量,可以簡單地理解成在當前進程的子進程有效則為環境變量,否則不是
- 注意:為了與普通變量區分,通常我們習慣將環境變量名設為大寫。

永久生效
* 永久的變量和臨時的變量(export聲明)
* 兩個文件:
* ```/etc/bashr // shell變量```
* ```/ect/profile // 環境變量,對所有用戶永久生效```
* 用戶目錄的一個隱藏文件:```.profile //只對當前用戶生效```
* 如何實現永久:
* 將需要的環境變量添加到```/etc/profile```
命令查找路徑與順序
$ echo $PATH
$ PATH=$PATH:/home/shiyanlou/mybin
// (這里在mybin目錄下有自己寫的.sh)
// 添加自定義路徑到“PATH”環境變量中
但是一旦退出終端再打開就失效了
實現全局有效
在每個用戶 home 目錄中有一個 Shell 每次啟動默認執行一個配置腳本,以初始化環境,包括添加一些用戶自定義環境變量等等。
zsh 的配置文件是 .zshrc,
Bash 的配置文件 .bashrc 。
它們在 etc 下還都有一個或多個全局的配置文件,不過我們一般只修改用戶目錄下的配置文件。
$ echo "PATH=$PATH:/home/shiyanlou/mybin" >> .zshrc
其中
>>表示追加到一個文件中
>表示覆蓋到一個文件中
修改和刪除已有變量
修改變量
| 變量設置方式 | 說明 |
|---|---|
| $ | 從頭向后開始匹配,刪除符合匹配字串的最短數據 |
| $ | 從頭向后開始匹配,刪除符合匹配字串的最長數據 |
| $ | 從尾向前開始匹配,刪除符合匹配字串的最短數據 |
| $ | 從尾向前開始匹配,刪除符合匹配字串的最長數據 |
| $ | 將符合舊字串的第一個字串替換為新的字串 |
| $ | 將符合舊字串的全部字串替換為新的字串 |
| 例: |
$ path=$PATH
$ echo $path
$ path=${path%/home/shiyanlou/mybin}
# 或使用通配符,*表示任意多個任意字符
$ path=${path%*/mybin}
讓環境變量立即生效
$ source .zshrc
或使用.
$ . ./.zshrc
二、文件查找
常用查找命令:
whereis搜二進制文件(-b),man文件(-m),源代碼文件(-s)locate- 通過“/var/lib/mlocate/mlocate.db”數據庫
- 手動更新數據庫
updatedb - 例:
$ locate /etc/sh //查找etc目錄下以sh開頭的文件 $ locate /usr/share/\*.jpg // \ 轉義-c計數-i忽略大小寫
which只能從PATH中搜索命令find強$ find ~ -mtime 0 //查找當天有改動的文件
黑客帝國數字雨
命令:cmatrix
$ sudo apt-get update;sudo apt-get install cmatrix

浙公網安備 33010602011771號