在 CentOS(以及大多數 Linux 發行版)中,aliases 的作用域主要取決于它們被定義的位置。通常,aliases 可以在以下三個地方定義:
/etc/bashrc
或 /etc/profile
文件中定義。當這些文件被系統啟動時,它們會被讀取并應用到所有用戶的 shell 環境中。~/.bashrc
、~/.bash_profile
或 ~/.profile
文件中定義。當用戶登錄時,這些文件會被讀取并應用到該用戶的 shell 環境中。~/.bashrc
)中定義,但使用 source
或 .
命令重新加載配置文件后才會生效。需要注意的是,如果一個 alias 在多個地方被定義,那么它的最終效果將由最后讀取的配置文件決定。例如,如果一個 alias 在 /etc/bashrc
和 ~/.bashrc
中都被定義了,那么在用戶登錄時,~/.bashrc
中的定義將覆蓋 /etc/bashrc
中的定義。
此外,aliases 的作用域也可以通過使用 unalias
命令來限制。例如,可以使用 unalias -f <alias_name>
來刪除特定函數類型的 alias,或者使用 unalias <alias_name>
來刪除特定名稱的 alias。但請注意,這只會影響當前 shell 會話中的 alias,不會影響其他會話或配置文件中的定義。