有人用 fish shell 吗? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
xiebruce
V2EX    程序员

有人用 fish shell 吗?

  xiebruce
xiebruce 2023 年 3 月 10 日 6192 次点击
这是一个创建于 1091 天前的主题,其中的信息可能已经有所发展或是发生改变。

最近从 zsh 换到 fish ,写了一个比较详细的 fish 从安装到使用的教程

fish shell 的配置和使用

第 1 条附言    2023 年 3 月 10 日

只在这边发了链接,所以这个人肯定是从这边进去的,我发一篇文章哪里得罪你了,这位北京的网友这么有素质? image

41 条回复    2024-06-15 21:40:24 +08:00
DdDddDlush
    1
DdDddDlush  
   2023 年 3 月 10 日   7
你即将进入内容农场:
www.xiebruce.top
zlstone
    2
zlstone  
   2023 年 3 月 10 日
fishshell ?那就得推荐一下我的[插件]( https://github.com/zzhaolei/transient.fish)了,实现瞬态提示
libook
    3
libook  
   2023 年 3 月 10 日
之前在官网读到过“Configurability is the root of all evil”,fish 的设计理念是开箱即用的产品,尽可能避免用户自己配置。

可我就是喜欢自己折腾配置的乐趣,所以还是一直在用 zsh ,也做了自己的工具箱。
linxl
    4
linxl  
   2023 年 3 月 10 日
我就用 fish ,开箱就用,啥都没配置,主要是喜欢它的自动补充
xiebruce
    5
xiebruce  
OP
   2023 年 3 月 10 日
@libook 我是被别人推荐入坑的,也不知道是不是我对 zsh 不够熟悉,又或者是其它原因,总之我觉得 fish 更强大一点,可配置的东西多一点。当你你能做自己的工具箱,那就是大佬了哈哈,我是只能用人家的,顶多弄明白怎么配置
zjsxwc
    6
zjsxwc  
   2023 年 3 月 10 日
额,不习惯 fish ,还是默认的 bash 自在,
提示的字符太多反而眼花缭乱,看得比较烦躁。
xiebruce
    7
xiebruce  
OP
   2023 年 3 月 10 日
@linxl 那建议你看看我的文章,其实还是挺多地方可以配置的哈哈
linxl
    8
linxl  
   2023 年 3 月 10 日
@xiebruce 被拦住了"检测到您使用了广告屏蔽插件",但是我没有安装 AD blocker 之类的,甚至把所有插件都关了也弹框。
xiebruce
    9
xiebruce  
OP
   2023 年 3 月 10 日
xiebruce
    10
xiebruce  
OP
   2023 年 3 月 10 日
@linxl 呃,按说不应该呀,什么浏览器? Safari ,chrome ,edge ,opera ,firefox 我都测试过没问题的呀
linxl
    11
linxl  
   2023 年 3 月 10 日
@xiebruce chrome.
顺便试了一下 edge 也弹,平时我不用这个,edge 一个插件也没有。
xiebruce
    12
xiebruce  
OP
   2023 年 3 月 10 日
@zjsxwc 啊?使用起来明明更方便怎么会眼花缭乱呢?你可以看看我介绍的优点
xiebruce
    13
xiebruce  
OP
   2023 年 3 月 10 日
@linxl 开了梯子?如果是,那把梯子关掉试试(只是试试,我想知道是不是这个原因,以方便解决)
linxl
    14
linxl  
   2023 年 3 月 10 日
@xiebruce 测了,还真是,确实开了,不然也上不了 v2 哈
xiebruce
    15
xiebruce  
OP
   2023 年 3 月 10 日
@linxl 我明白了,应该是你梯服务器那边禁止了所有广告域名,导致广告内容无法被加载到网页对应的标签中,我 js 判断如果广告标签内容为空,那就认为是被插件拦截了,所以我就往页面 insert 一个弹窗,由于 js 是隔一会儿循环检测一次(忘了隔几秒了),如果发现弹窗被从页面元素里删掉了,又会往页面 insert 一个弹窗,导致弹窗怎么都关不掉
cnbatch
    16
cnbatch  
   2023 年 3 月 10 日
用过一段时间,是被 GhostBSD“推荐”使用的。
GhostBSD 的作者十分喜欢 fish shell ,还把默认的 shell 设置成 fish ,于是我就用了好几个月。

最后还是改了设置,重新回到 FreeBSD 自带的 tcsh
jsun969
    17
jsun969  
   2023 年 3 月 10 日   1
我用的 fish+(starship)[https://starship.rs/],相当舒适,配置就几条命令
![image.png]( https://s2.loli.net/2023/03/10/aDwpjzh7IXbBQL6.png)
cubecube
    18
cubecube  
   2023 年 3 月 10 日
@libook zsh 就是太慢了。。我双修,更喜欢 fish 一些。zsh 功能倒是多一些
Immortal
    19
Immortal  
   2023 年 3 月 10 日
@cubecube
其实 zsh 本身不慢的,慢的是 oh-my-zsh 这类全家桶
可以尝试用 zinit 等 zsh 插件管理工具"懒加载"提升启动速度
hefish
    20
hefish  
   2023 年 3 月 10 日
没开梯子,没装插件,打开页面有点慢,等了一会儿。也报说检测到了 adblock ,不再给看。
xiebruce
    21
xiebruce  
OP
   2023 年 3 月 10 日
@hefish 这不太应该呀,强刷一下,或者试试在隐私模式下还会提示不?还有,你是哪个浏览器?
xiebruce
    22
xiebruce  
OP
   2023 年 3 月 10 日
@cubecube 啊? zsh 功能更多?不是 fish 更多吗?
keller
    23
keller  
   2023 年 3 月 10 日
fish 那可不走到哪装到哪
xiebruce
    24
xiebruce  
OP
   2023 年 3 月 10 日
@cnbatch 呃,freebsd 啊,没用过,用这系统主要是做什么?服务器?
LucasWang
    25
LucasWang  
   2023 年 3 月 10 日
fish 忠实用户,走到哪装到哪,开箱即用,几乎不用任何配置。

唯一推荐的插件:fish z
https://github.com/jethrokuan/z


强烈吐槽点:
从 3.6.0 开始 fish abbr 必须写在配置文件里才能全局生效了,十分不便。
kindjeff
    26
kindjeff  
   2023 年 3 月 10 日
六年 fish 用户
jokeface
    27
jokeface  
   2023 年 3 月 10 日 via Android
没人用 warp 吗
DonaidTrump
    28
DonaidTrump  
   2023 年 3 月 10 日
@xiebruce linux 能干啥,它能干啥。
xiebruce
    29
xiebruce  
OP
   2023 年 3 月 10 日
@tulongtou 哦哦,只是感觉现在都是 Linux 服务器多哈哈
dayeye2006199
    30
dayeye2006199  
   2023 年 3 月 11 日 via Android
问问,挺多命令行工具,不提供 fish 的补全脚本,这块东西大家怎么解决的
billzhuang
    31
billzhuang  
   2023 年 3 月 11 日 via iPhone
@jokeface 喜欢 warp 的 ai 功能
xiebruce
    32
xiebruce  
OP
   2023 年 3 月 11 日
@dayeye2006199 命令行工具不提供 fish 的补全脚本?啥意思?
dayeye2006199
    33
dayeye2006199  
   2023 年 3 月 11 日 via Android
@xiebruce 比如 kubectl 官方只有 bash 和 zsh 的补全,https://kubernetes.io/docs/reference/kubectl/cheatsheet/
xiebruce
    34
xiebruce  
OP
   2023 年 3 月 11 日
cnbatch
    35
cnbatch  
   2023 年 3 月 11 日
FreeBSD 曾经还有一项“用法”,那就是被苹果公司拿去做成 macos 的组成部分。
macos 有 kqueue ,还有一堆命令行工具,都是源自于 FreeBSD 。
只不过 mac 自带的命令行工具已经很久没更新过了,还停留在很旧的版本,比现在落后十几年。kqueue 也稍有差异,苹果给它加了点自己用的功能。
还有 mac 的防火墙 PF ,出自 OpenBSD ,也存在于 FreeBSD 当中。

可以说,mac 就像黑洞吸积路过恒星那样,从 FreeBSD“吸”了不少代码。
werifu
    36
werifu  
   2023 年 3 月 12 日
@dayeye2006199 刚写了个在 fish 下给任意 CLI 生成自动补全的小工具,可以看看
t/923375#reply0
kiritoyui
    37
kiritoyui  
   2023 年 3 月 13 日
不少小工具不支持 fish 或者步骤比较麻烦 ,连夜又换回 zsh 了
xiebruce
    38
xiebruce  
OP
   2023 年 3 月 14 日
@kiritoyui 呃,比如说?
kiritoyui
    39
kiritoyui  
   2023 年 3 月 14 日
@xiebruce kubectl 补全,kubecolor 等 比较麻烦 不是官方支持,还有我 source gvm 一大堆报错
xiebruce
    40
xiebruce  
OP
   2023 年 3 月 14 日
@kiritoyui 哦哦,原来如此
TOUJOURSER
    41
TOUJOURSER  
   2024 年 6 月 15 日
请问在 fish 中如何实现这个组合键( esc + .)的效果
关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     3353 人在线   最高记录 6679       Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 24ms UTC 12:10 PVG 20:10 LAX 04:10 JFK 07:10
Do have faith in what you're doing.
ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86