系統(tǒng)之家 - 系統(tǒng)光盤下載網(wǎng)站!

當(dāng)前位置:系統(tǒng)之家 > 系統(tǒng)教程 > Linux安裝配置Zsh

在Linux中如何安裝及配置Zsh

時間:2015-03-12 17:22:50 作者:qipeng 來源:系統(tǒng)之家 1. 掃描二維碼隨時看資訊 2. 請使用手機瀏覽器訪問: https://m.xitongzhijia.net/xtjc/20150312/41109.html 手機查看 評論

  Zsh和bash都是能夠在Linux中運行的shell腳本,通常默認的是bash,要想使用Zsh需另外安裝,下面小編將針對Zsh在Linux系統(tǒng)中的安裝和配置給大家做個詳細介紹,感興趣的朋友可以來了解下。

 在Linux中如何安裝及配置Zsh

  1. 安裝

  安裝zsh

  在Gentoo中安裝zsh,我們需要通過emerge來安裝app-shells/zsh(zsh本身)和app-shells/zsh-completion (zsh補全腳本)兩個軟件包。

  代碼 1.1: 通過emerge安裝zsh

  # emerge zsh zsh-completion

  進入zsh

  當(dāng)你第一次運行zsh的時候,你會得到如下的一些信息。因為我們會在后面創(chuàng)建一個init文件,所以你可以跳過這一個功能選單。

  代碼 1.2: 跳過初始配置

  $ zsh

  This is the Z Shell configuration function for new users, zsh-newuser-install.

  You are seeing this message because you have no zsh startup files

 。╰he files .zshenv, .zprofile, .zshrc, .zlogin in the directory

  ~)。 This function can help you with a few settings that should

  make your use of the shell easier.

  You can:

 。╭) Quit and do nothing. The function will be run again next time.

 。0) Exit, creating the file ~/.zshrc containing just a comment.

  That will prevent this function being run again.

 。1) Continue to the main menu.

  --- Type one of the keys in parentheses --- q

  2. 配置

  簡介

  運行zsh會為一個會話啟動zsh。如果你要一個永久的解決方案,請參考保存設(shè)置這一個章節(jié)。在安裝完成以后,zsh看起來可能非常的簡單并且功能十分有限。為了改變這個狀況,你需要對幾個配置進行修改。

  先進的Tab補全

  你需要運行以下的命令來開啟zsh的tab補全系統(tǒng):

  代碼 2.1: 開啟補全系統(tǒng)

  % autoload -U compinit

  % compinit

  默認的補全風(fēng)格非常的普通和簡陋。如果你要改進它的外觀,運行以下的命令:

  代碼 2.2: 改進補全風(fēng)格

  % zstyle ‘:completion:*:descriptions’ format ‘%U%B%d%b%u’

  % zstyle ‘:completion:*:warnings’ format ‘%BSorry, no matches for: %d%b’

  命令糾錯

  開啟命令自動糾錯功能也是一個不錯的主意:

  代碼 2.3: 開啟糾錯功能

  % setopt correctall

  提示符

  當(dāng)前的提示符可能看起來很乏味,然而我們可以通過簡單的幾個步驟來解決它。首先,我們需要初始化高級命令提示符支持:

  代碼 2.4: 開啟高級命令提示符功能

  % autoload -U promptinit

  % promptinit

  我們可以使用prompt -p命令來列出可用的提示符樣本,F(xiàn)在我們可以激活一個我們喜歡的了:

  代碼 2.5: 選擇一個提示符樣本

 。ㄊ褂媚氵x擇的提示符替代“gentoo”)

  % prompt gentoo

  注意: 如果你在嘗試不同的提示符,并且你不想看到每一個提示符的示例,那么你可以使用prompt -l來列出可用的提示符。

  另一個選擇是創(chuàng)建你自己的提示符。你需要設(shè)置PS1環(huán)境變量來實現(xiàn)這個想法。

  代碼 2.6: 一個簡單的自定義提示符

  % export PS1=“[Test Prompt] 》 ”

 。跿est Prompt] 》

  能夠創(chuàng)建自定義的文本提示符一定很不錯,與此同時zsh也提供了許多的轉(zhuǎn)義序列來允許你把系統(tǒng)信息插入到提示符里。一些可用的轉(zhuǎn)義序列如下:

  轉(zhuǎn)義序列打印效果

  %T系統(tǒng)時間(時:分)

  %*系統(tǒng)時間(時:分:秒)

  %D系統(tǒng)日期(年-月-日)

  %n你的用戶名

  %B - %b開始到結(jié)束使用粗體打印

  %U - %u開始到結(jié)束使用下劃線打印

  %d你目前的工作目錄

  %~你目前的工作目錄相對于~的相對路徑

  %M計算機的主機名

  %m計算機的主機名(在第一個句號之前截斷)

  %l你當(dāng)前的tty

  你只要將這些轉(zhuǎn)義序列插入到環(huán)境變量PS1里就可以了,而后zsh會自動地解析他們。

  代碼 2.7: 一個更復(fù)雜的提示符

  % export PS1=“[%* - %D] %d %% ”

  [08:44:23 - 06-02-18] /home/username %

  歷史記錄

  不幸的是Gentoo里默認的zsh配置不包含對命令行歷史記錄的支持。因為使用沒有歷史記錄功能的shell是十分令人沮喪的,所以我們應(yīng)該輸入以下的命令:

  代碼 2.8: 基礎(chǔ)的歷史記錄配置

  % export HISTSIZE=2000

  % export HISTFILE=“$HOME/.history”

 。ㄈ绻麤]有以下命令,歷史記錄不會被存儲)

  % export SAVEHIST=$HISTSIZE

  為了防止記錄重復(fù)的輸入(比如ls -l在同一個shell會話中輸入了太多次),你可以設(shè)置hist_ignore_all_dups選項:

  代碼 2.9: 設(shè)置忽略重復(fù)的記錄

  % setopt hist_ignore_all_dups

  一個小技巧可以用來防止某些特定的輸入被記錄,那就是在輸入他們之前先輸入至少一個空格。

  代碼 2.10: 防止某些特定的輸入被記錄

  % setopt hist_ignore_space

 。ㄟ@個命令不會被記錄。請注意在它之前的多出來的那個空格。)

  % cat /proc/cpuinfo

  雜項設(shè)置

  如果你想要避免在切換目錄時一直輸入乏味的cd命令(比如使用/etc而不是cd /etc)你可以設(shè)置autocd選項。

  代碼 2.11: 設(shè)置autocd選項

  % setopt autocd

  如果標準的bash樣式的文件名替換(globbing)不和你的胃口,你可以通過extendedglob選項來設(shè)置開啟擴展的文件名替換(globbing)(與正則表達式有些類似)。

  代碼 2.12: 設(shè)置擴展的文件名替換

  % setopt extendedglob

  當(dāng)上面的選項被設(shè)置了以后,你可以使用擴展的文件名替換查詢,例如:cp ^*.(tar|bz2|gz)。

  3. 保存設(shè)置

  保存zsh設(shè)置

  當(dāng)我們將zsh設(shè)置成我們喜歡的樣子后,我們最好把這些設(shè)置保存成zsh的默認設(shè)置。一個可行的方法是把我們的配置寫入到/etc/zsh/zshrc腳本里,這樣這些設(shè)置就會成為系統(tǒng)默認的設(shè)置。還有一個替代方案就是通過編輯/etc/zsh/zshrc文件來使我們的設(shè)置只對自己的帳號有效。

  代碼 3.1: 一個zshrc范例

  #!/bin/zsh

  # completion

  autoload -U compinit

  compinit

  # correction

  setopt correctall

  # prompt

  autoload -U promptinit

  promptinit

  prompt gentoo

  4. 把zsh設(shè)置成默認的shell

  對于有root權(quán)限的用戶的選擇

  我們可以通過usermod命令來設(shè)置某一個給定用戶的shell。

  代碼 4.1: 使用usermod命令永久地切換到zsh

  # usermod -s /bin/zsh userlogin

  對于非root用戶的替代解決方案

  如果你的系統(tǒng)管理員拒絕為你把shell設(shè)置成zsh(無論你的請求多么地溫和),那么你可以設(shè)置bash在啟動的時候執(zhí)行zsh,你要做的一切就是對你的~/.bashrc做一個小修改。

  代碼 4.2: ~/.bashrc樣本

  (把以下內(nèi)容加入到你的~/.bashrc里)

  exec zsh

  改變shell的另外一種方法就是使用chsh命令(一個改變用戶登錄shell的實用程序)。一個普通用戶只能改變自己賬戶的登錄shell。而作為root,你可以改變所有用戶的登錄shell。

  代碼 4.3: 使用chsh命令永久地切換到zsh

 。ㄊ褂媚愕挠脩裘娲“username”)

  $ chsh -s /bin/zsh username

  上面就是Linux安裝和配置Zsh的方法介紹了,安裝完Zsh后還需對其進行相關(guān)配置,而Zsh的使用可以參考系統(tǒng)之家Linux Zsh命令使用實例

發(fā)表評論

0

沒有更多評論了

評論就這些咯,讓大家也知道你的獨特見解

立即評論

以上留言僅代表用戶個人觀點,不代表系統(tǒng)之家立場

其他版本軟件

熱門教程

人氣教程排行

Linux系統(tǒng)推薦

官方交流群 軟件收錄