fish不好吗,开箱即用,
你的zsh 可以对apt的命令进行tab补全吗?
我是的 apt list --upgrade 中的upgrade 无法提示
fish不好吗,开箱即用,
我试试
我试试
fish可以啊,不错,但是开箱没有zsh git 插件这样的功能
fish也不错,但是最近老遇到执行脚本报错,切换到bash,再切回fish。烦了……
所以折腾了一下zsh。网上有很多地方有安装zsh的文章。但一大堆废话,有好多用的github链接下载不了,折腾人。还有的漏了步骤,例如设置终端字体。
所以我整了一个没有废话、干净、方便的教程。让大家复制粘贴就可以搞定zsh。
你的zsh 可以对apt的命令进行tab补全吗?
我是的 apt list --upgrade 中的upgrade 无法提示
自动补全功能是oh-my-zsh插件提供的。你没装的话,zsh是没有自动补全的。
fish也不错,但是最近老遇到执行脚本报错,切换到bash,再切回fish。烦了……
所以折腾了一下zsh。网上有很多地方有安装zsh的文章。但一大堆废话,有好多用的github链接下载不了,折腾人。还有的漏了步骤,例如设置终端字体。
所以我整了一个没有废话、干净、方便的教程。让大家复制粘贴就可以搞定zsh。
不同shell还是有区别的,我之前就发现了一个比如
a=$(ps aux)
echo $a
bash出来的换行就没有了,zsh的就有换行。如果是echo "$a",那bash也有换行了。这是因为bash并不是把变量当作一个参数,而是直接做了文本的替换,每个空白字符分隔的地方都变成了一个参数,而zsh的处理方法变量就是作为单个的参数(和加引号是一样的)。另一个更直观的例子:
a="-l /"
ls $a
bash 和 zsh 有许多不同的地方。 同样脚本或命令在bash和zsh下,运行的结果不一样。
发现这个问题,是因为同样的命令在Linux上运行正常, 但是到了macOS上却出了问题。 原因是新版macOS的用户初始shell改成了zsh. 在macOS系统上,切换到bash以后这个命令就运行正常了。
bash 和 zsh 有许多不同的地方。 同样脚本或命令在bash和zsh下,运行的结果不一样。
发现这个问题,是因为同样的命令在Linux上运行正常, 但是到了macOS上却出了问题。 原因是新版macOS的用户初始shell改成了zsh. 在macOS系统上,切换到bash以后这个命令就运行正常了。
对啊,zsh比fish的兼容性好很多。bash是兼容性最好的!
但是bash太难用了,命令行用得多的话,zsh还是得装!
对啊,zsh比fish的兼容性好很多。bash是兼容性最好的!
但是bash太难用了,命令行用得多的话,zsh还是得装!
我的方法是
- 简单命令行操作用
bash
- 复杂命令行脚本操作上
zx
, 用js/nodejs
语法来执行命令行操作。效率比 bash/zsh 高不少。 - 运维脚本舍弃 py 采用
TypesScript
+zx
,通过 ts 的类型约束来提高效率和代码质量
zx 是谷歌开发的基于 nodejs
封装的命令行软件: https://github.com/google/zx/
支持楼主的行为
也可以注册一个coding做github mirror
支持自动镜像,定时同步,这样就是稳定的国内镜像了
- 支持一下~
Popular Events
More
安装zsh
安装oh-my-zsh
安装powerlevel10k主题及字体
powerlevel10主题必须要搭配使用合适的字体才好用,推荐一个字体网站:nerdfonts,这里面很多非常漂亮的编程字体可供选择,我用的是SauceCodePro Nerd Font Mono。我不光在终端中用它,在VSCode中也是使用这款字体。
下载你喜欢的字体后用字体管理器加载,然后在终端中使用该字体。然后执行
p10k configure
。补充一下:
如果运行中遇到p10k报错,可能是因为gitee上的版本有点旧,可以去github上下最新版的,执行前要将旧的删除。
修改zsh配置文件
vim ~/.zshrc
找到ZSH_THEME=,将内容该为
安装自动补全、语法高亮、自动跳转
vim ~/.zshrc
在配置文件.zshrc中找到以下配置,在git后面(换行)添加下载的插件名称,如下
source ~/.zshrc
插件使用说明
git
可以方便的使用git命令的缩写,常见缩写:
gp='git push'
gm='git merge'
gl='git pull'
查看所有git命令缩写
sudo
当遇到执行命令报没有sudo权限时,直接按2下Esc再回车,就能快速执行sudo 上一条命令。
autojump
j指令,快速切换路径
j -s
显示autojump所有已访问路径
j 关键字
关键字是已访问过的路径中的字符片段,可以按tab补全,自动补全的部分会显示_,补全几个字符显示几个_
jo 关键字
用文件管理器打开指定路径
d指令,切换最近访问过的路径
输入d回车,回显示最近的所有路径列表,再输入数字回车,就可以切换到相应的路径。
autosuggestions
只需输入部分命令即可根据之前输入过的命令提示,按右键→即可补全5
highlighting
语法高亮,命令正确显示是绿色,命令错误显示是红色。
zsh-completions
bash命令按tab自动补全,另外docker用得多的也可以加docker命令补全功能!