黄色片网站免费观看-黄色片网站观看-黄色片网站大全-黄色片视频网-色偷偷网址-色偷偷网站

alias

定義或顯示別名。

概要

alias [-p] [name[=value] ...]

主要用途

選項

-p:顯示全部已定義的別名。

參數

name(可選):指定要(定義、修改、顯示)的別名。

value(可選):別名的值。

返回值

alias返回true除非您要顯示的別名未定義。

例子

# 顯示全部已定義的別名
alias
alias -p

# 顯示已定義的別名(假設當前環境存在以下別名)
alias ls
alias ls grep

# 定義或修改別名的值
alias ls='ls --color=auto'
alias ls='ls --color=never' grep='grep --color=never'

知識點

直接在shell里設定的命令別名,在終端關閉或者系統重新啟動后都會失效,如何才能永久有效呢?

使用編輯器打開~/.bashrc,在文件中加入別名設置,如:alias rm='rm -i',保存后執行source ~/.bashrc,這樣就可以永久保存命令的別名了。

因為修改的是當前用戶目錄下的~/.bashrc文件,所以這樣的方式只對當前用戶有用。如果要對所有用戶都有效,修改/etc/bashrc文件就可以了。

請注意,以下內容可能與您實際使用的系統有出入:

在CentOS7下,這個文件是/etc/bash.bashrc。此外在CentOS7下,細看~/.bashrc文件,會發現有這樣一段代碼:

if [ -f ~/.bash_aliases ]; then
  . ~/.bash_aliases
fi

這個代碼的意思就是如果存在那么就加載.bash_aliases文件,所以也可以在用戶根目錄下新建該文件用于單獨存放命令別名設置。

錯誤用法

# 為方便演示,刪除全部別名
unalias -a
# 沒有用單引號擴起
alias rm=rm -rf
# 執行命令后報錯 bash: alias: -rf: not found
# 這時使用alias查看rm的別名時返回 alias rm='rm'
# 更具有迷惑性的例子
# 為方便演示,刪除全部別名
unalias -a
# 仍然沒有用單引號括起
alias ls=ls --color=never
# 執行命令后看起來沒有報錯

# 使用alias查看全部別名會發現運行結果如下:
# alias --color=never
# alias ls='ls'
# alias處理時將它們看成了兩組

Q&A

Q:如果我要顯示一到多個別名,但不知道其中是否有未定義的該怎么辦?

A:正常執行就是了,alias不會因為有一個未定義的別名就結束對剩余參數的執行。

Q:如果我這么定義alias cd='ls' ls='cd',會有什么后果?

A:運行cd依然會切換目錄,運行ls依然會列出文件夾的內容;不要這樣定義。

注意

  1. 執行腳本時請注意:

使用source命令執行的bash腳本如果執行了aliasunalias命令,那么有可能會對終端環境的別名設置產生影響;終端環境的別名設置也可能改變運行結果;

通過sh方式調用的bash腳本或直接運行當前用戶有執行權限的腳本不受終端環境的別名影響。

  1. 刪除別名,請查看unalias命令。

  2. 建議您不要對mv cp rm等命令的別名設置危險的-f選項,比如alias rm='rm -f'

  3. 需要注意別名是否和其他命令有沖突的情況。

  4. 該命令是bash內建命令,相關的幫助信息請查看help命令。

其他參考鏈接

Linux命令詳解:[8]alias創建自己的命令