您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關如何在Shell中命令別名、命令歷史,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。
命令別名
可以使用 alias 命令查看和修改命令別名。
下面是一個查看系統中命令別名的示例:
$ alias alias alert='notify-send --urgency=low -i "$([ $? = 0 ] && echo terminal || echo error)" "$(history|tail -n1|sed -e '\''s/^\s*[0-9]\+\s*//;s/[;&|]\s*alert$//'\'')"' alias egrep='egrep --color=auto' alias fgrep='fgrep --color=auto' alias grep='grep --color=auto' alias l='ls -CF' alias la='ls -A' alias ll='ls -alF' alias ls='ls --color=auto'
可以看到, ls
是 ls --color=auto
的別名,當鍵入 ls
并運行時,實際上運行的是 ls --color=auto
命令。
用戶也可以自行創建或修改別名:
$ alias dt='date -d today +"%Y-%m-%d %H:%M:%S"' $ dt 2018-06-30 12:15:37
上面的例子將 dt
作為 date -d today +"%Y-%m-%d %H:%M:%S"
的別名,當運行前者時,實際上運行的是后者。
用戶還可以刪除別名:
$ unalias dt
上面的命令刪除了 dt 別名。
命令歷史
在Shell提示符后按 <Up>
和 <Down>
(上箭頭和下箭頭)按鍵,可以翻出上一條和下一條命令,這是命令歷史的功能。
使用 history 查看命令歷史:
$ history # 省略 634 ls 635 date 636 history
每一條命令都被賦予一個編號,使用 !編號
即可運行該編號的命令:
$ !635 date Sat Jun 30 12:21:11 CST 2018
!! 可以運行上一條命令:
$ !! date Sat Jun 30 12:21:42 CST 2018
還可以對歷史命令進行部分替換并執行,例如使用 history 查看時有一條這樣的命令:
640 ls ~
使用 !number:s/pattern/replacement/
將編號為 number
的命令中的 pattern
替換為 replacement
,比如將上面命令中的 ~
替換為 .
,即執行 ls .
,可使用下面的命令:
$ !640:s/~/./
命令替換
使用 ` 完成將命令嵌入到另一條命令:
$ echo "Time is `date`" Time is Sat Jun 30 12:31:28 CST 2018
事實上,Shell會首先執行 date
命令,得到 Sat Jun 30 12:31:28 CST 2018
,之后再執行 echo "Time is Sat Jun 30 12:31:28 CST 2018"
,這樣就實現了將 date
嵌入到 echo
中執行的命令。
關于如何在Shell中命令別名、命令歷史就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。