0


zsh 入门

什么是zsh,它和bash相比有什么优势?

  • zsh是一种Unix shell,类似于bash、sh、csh等命令行解释器。它是一种交互式的shell,可以让用户在终端中输入命令并与操作系统进行交互。zsh最初是为了扩展bash的功能而创建的,但现在已经成为了一种很受欢迎的shell。

与bash相比,zsh有许多优点,其中包括:

  1. 自动补全:zsh的自动补全功能比bash更强大。它可以根据当前光标位置和历史记录,自动推测出用户想输入的命令或参数,极大地提高了操作效率。
  2. 主题和插件:zsh具有丰富的主题和插件库,用户可以通过这些扩展来改善其外观和功能。
  3. 强大的别名:zsh支持复杂的别名,这些别名可以包含参数、条件和内嵌命令。
  4. 可定制性:zsh允许用户自定义其外观、行为和键绑定,以满足个人偏好和需求。
  5. 强大的历史命令:zsh的历史命令比bash更强大,可以实现更高级的搜索和过滤功能。

以下是一些高效使用zsh的技巧:

  1. 使用自动补全:zsh的自动补全功能非常强大,可以极大地提高命令行操作的效率。使用Tab键可以触发自动补全,如果有多个候选项,可以按下Tab键多次进行选择。
  2. 学习和使用别名:别名是指将一个长命令或常用命令组合成一个短名称的功能。在zsh中,可以使用alias命令创建别名,然后在命令行中使用短名称代替长命令。例如,您可以使用alias ll='ls -alF’将ls -alF命令别名为ll,这样每次输入ll就相当于输入了ls -alF。
  3. 配置主题:zsh的主题是指终端窗口的外观和风格。zsh提供了许多不同的主题,您可以根据自己的喜好和需求选择适合自己的主题。可以在.zshrc文件中设置主题。
  4. 学习和使用插件:zsh有许多插件可以扩展其功能。使用插件可以使命令行操作更加高效。例如,zsh-syntax-highlighting插件可以为命令行中的语法高亮显示。
  5. 学习和使用历史命令:zsh的历史命令非常强大,可以实现高级的搜索和过滤功能。可以使用history命令查看之前使用的命令,也可以使用Ctrl+R进行搜索。
  6. 学习和使用通配符:通配符是指可以匹配一类文件或目录的特殊符号。在zsh中,可以使用通配符进行文件和目录操作,例如使用*匹配任意字符,或者使用?匹配单个字符。
  7. 自定义快捷键:zsh允许用户自定义快捷键来加速命令行操作。可以在.zshrc文件中设置键绑定,以便在命令行中快速执行常用操作。

zsh有许多快捷键,以下是一些常用的快捷键:

  1. Ctrl+A:将光标移动到行首。
  2. Ctrl+E:将光标移动到行末。
  3. Ctrl+L:清屏,相当于执行clear命令。
  4. Ctrl+U:删除光标前的所有字符。
  5. Ctrl+K:删除光标后的所有字符。
  6. Ctrl+W:删除光标前的一个单词。
  7. Ctrl+R:搜索历史命令。
  8. Ctrl+D:退出终端,相当于执行exit命令。
  9. Tab键:自动补全,用于输入命令和路径。
  10. Ctrl+Z:挂起当前进程,可以使用fg命令恢复进程。
  11. !:执行历史命令,可以使用!n来执行第n个命令。
  12. Esc+.:插入上一个命令的最后一个参数,相当于使用Alt+.。
  13. Alt+F:将光标移动到下一个单词。
  14. Alt+B:将光标移动到上一个单词。
  15. Alt+U:将当前单词转换为大写。
  16. Alt+L:将当前单词转换为小写。
  17. Alt+C:将光标后的单词首字母转换为大写。
  18. Alt+D:删除光标后的一个单词。

zsh中通配符的使用

  • 在zsh中,通配符是一种用于匹配文件和目录名的特殊符号。以下是一些常用的通配符:
  1. *:匹配任意字符,可以匹配0个或多个字符。 例如:ls *.txt会列出所有扩展名为txt的文件。
  2. ?:匹配单个字符,可以匹配任何单个字符。 例如:ls file?.txt会列出所有名字为fileX.txt的文件,其中X可以是任何字符。
  3. [ ]:匹配字符集中的任意一个字符,可以匹配字符集中的任意一个字符。 例如:ls file[abc].txt会列出所有名字为filea.txt、fileb.txt和filec.txt的文件。
  4. { }:匹配花括号中的任意一个字符序列,可以匹配花括号中的任意一个字符序列。 例如:ls file{a,b,c}.txt会列出所有名字为filea.txt、fileb.txt和filec.txt的文件。
  5. ^:用于否定字符集,匹配除了字符集中的任何字符之外的所有字符。 例如:ls file[^abc].txt会列出所有名字不是以filea.txt、fileb.txt和filec.txt结尾的文件。
  6. /:匹配目录分隔符,可以用于匹配特定目录层级。 例如:ls /usr/local/*会列出/usr/local目录下的所有文件和目录。

插件

  • zsh有许多常用的插件可以增强其功能,以下是一些常用的插件以及它们的用途:
  1. zsh-autosuggestions:根据历史命令和当前输入,自动提示命令参数和选项。 使用方法:先安装插件,可以通过oh-my-zsh等工具进行安装,然后在.zshrc文件中添加以下代码:
plugins=(zsh-autosuggestions)source$ZSH/oh-my-zsh.sh
  1. zsh-syntax-highlighting:根据语法高亮显示命令和文件路径等内容。 使用方法:先安装插件,可以通过oh-my-zsh等工具进行安装,然后在.zshrc文件中添加以下代码:
plugins=(zsh-syntax-highlighting)source$ZSH/oh-my-zsh.sh
  1. autojump:根据使用频率,自动跳转到最常用的目录。 使用方法:先安装插件,可以通过oh-my-zsh等工具进行安装,然后在.zshrc文件中添加以下代码:
plugins=(autojump)source$ZSH/oh-my-zsh.sh
  1. fzf:快速模糊搜索历史命令和文件路径。 使用方法:先安装插件,可以通过oh-my-zsh等工具进行安装,然后在.zshrc文件中添加以下代码:
plugins=(fzf)source$ZSH/oh-my-zsh.sh
  1. git:增强git命令的使用。 使用方法:git插件已经包含在oh-my-zsh中,可以在.zshrc文件中启用插件:
plugins=(git)source$ZSH/oh-my-zsh.sh

以上是一些常用的zsh插件,可以根据需要进行选择和配置。在使用插件时,需要先安装插件,然后在.zshrc文件中添加插件名称,最后执行source命令使插件生效。

插件z、extract

z

extract

是两个很有用的 zsh 插件。它们可以帮助你快速浏览和管理文件系统中的文件。

z

插件可以让你快速跳转到最常用的目录。它会记住你经常访问的目录,并在你输入

z <目录名>

的时候自动补全相应的目录。如果你经常在命令行下工作,这个插件会非常有用。

使用

z

插件的方法很简单。首先需要安装

z

插件,可以通过

brew install z

或者

apt-get install zsh-z

进行安装。然后在

.zshrc

文件中添加如下一行:

source /path/to/z.sh

保存并退出

.zshrc

文件,重新打开一个终端窗口,你就可以使用

z

命令了。例如,如果你经常在

/usr/local/bin

目录下工作,可以使用

cd /usr/local/bin

命令进入该目录,然后输入

z

命令,将该目录加入

z

插件的跳转列表中。以后,只要输入

z loc

,就可以快速跳转到

/usr/local/bin

目录。

extract

插件可以让你快速解压各种类型的压缩文件。它支持多种格式,包括

.zip

.tar.gz

.tar.bz2

.tar.xz

等。你只需要输入

extract <压缩文件>

命令,就可以快速解压该文件。

使用

extract

插件同样很简单。首先需要安装

extract

插件,可以通过

brew install extract

或者

apt-get install zsh-extract

进行安装。然后在

.zshrc

文件中添加如下一行:

source /path/to/extract.plugin.zsh

保存并退出

.zshrc

文件,重新打开一个终端窗口,你就可以使用

extract

命令了。例如,如果你有一个名为

example.zip

的压缩文件,可以使用

extract example.zip

命令解压该文件。

推荐zsh配置

  • 以下是一个简单的zsh配置示例,包括了一些常用的插件和快捷键设置:
  1. 安装zsh和oh-my-zsh
# 安装zshsudoapt-getinstallzsh# 安装oh-my-zshsh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
  1. 安装常用的插件
# 安装zsh-autosuggestions插件git clone https://github.com/zsh-users/zsh-autosuggestions ~/.oh-my-zsh/custom/plugins/zsh-autosuggestions

# 安装zsh-syntax-highlighting插件git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ~/.oh-my-zsh/custom/plugins/zsh-syntax-highlighting

# 安装autojump插件git clone https://github.com/wting/autojump.git ~/.autojump
cd ~/.autojump
./install.py

# 安装fzf插件git clone --depth 1 https://github.com/junegunn/fzf.git ~/.fzf
~/.fzf/install

# 安装git插件sudoapt-getinstallgit
  1. 配置快捷键
# 设置快捷键
bindkey '^[[1;5C' forward-word # Ctrl+Right arrow to move cursor one word to the right
bindkey '^[[1;5D' backward-word # Ctrl+Left arrow to move cursor one word to the left
  1. 配置插件
# 配置zsh-autosuggestions插件plugins=(zsh-autosuggestions)# 配置zsh-syntax-highlighting插件plugins=(zsh-syntax-highlighting)# 配置autojump插件plugins=(autojump)# 配置fzf插件plugins=(fzf)# 配置git插件plugins=(git)
标签: bash linux unix

本文转载自: https://blog.csdn.net/qq_41759305/article/details/129707615
版权归原作者 骤雨__ 所有, 如有侵权,请联系我们删除。

“zsh 入门”的评论:

还没有评论