zsh.one

beginning

zsh.one 是我的第一个项目, 正式项目. 之前也做过快速的安装脚本, 因为每次开了VPS之后都要干那些事, 装qbit kodbox docker 什么的.

所以自己就先写了docker 和 compose 的安装脚本, 其实就是按照官方教程上的命令 写一遍, 自己也不会多的操作, 所以也没有自定义函数 函数入口啊什么的.

自己还搞不懂为什么别人 curl -L abc.sh | sh 之后, 我按照shell通道的写法为什么不行, 只能一直 sh< (curl -L abc.sh) 的写法用.

然后github的raw查看挺好, 自己也想整. 就琢磨怎么做, 就拿了个Heroku的官方go实例 ( gin框架 )改了改. 然后发现了问题, 别人的看是按格式缩进的, 我做的时候, 复制别人html的格式. 然后curl得到的就是有格式的html. 然后又琢磨, 根据UA来判断, 先写了like Gecko, 用用没毛病挺好. 自己很高兴. 后来用火狐试了试发现直接下文件, 看了火狐的UA, 才想起别人是like Gecko, 火狐的内核是 Gecko. 啧啧, 自己又改好, 丢到heroku上, Cloudflare套上SSL, 用的挺好挺开心. 虽然都是Ubuntu专用的, 但谁让我只用Ubuntu呢.

ohmyzsh

后来接触到zsh, ohmyzsh, 刚开始还看到了 zplug, 可惜没学会. zsh的厉害之处在于丰富的插件生态. 只可惜装起来挺费劲, 我就又写脚本, 然后又部署到heroku. 本着'穷则兼济天下'的原则, 我就想整个网站. 反正手里域名也有 20多个了, 不写点东西, 合适吗? 然后就用 jekyll 写了个, 还用hugo 练手写了个blog. 可惜没啥水平, 写个技术文章, 错误太多, 自己都不会意思 public了...但是用jekyll写的时候, ruby还没学全呢, 好歹是会点markdown, 不然真就写都写不出来了...

现在姿势水平提高之后, 写出来的东西总算能看了. 自己也是更换了网址的API技术栈. 自己一直用cloudflare的workers 终于通了点 js的窍. 也终于明白 什么格式不格式的, github raw的原理是利用 语言http库的http response writer 加上的输出内容, 所以把get.zsh.one 的后端切换到workers 是理所应当的, function的次数消耗 heroku的 运行时间消耗 更划算, 更符合低资源消耗的追求.

more+

zsh的太多插件, 可能就是为了实现 fish like的功能. 百闻不如一见, 我就试了试 fish. 确实不错, 也有 ohmyfish这样的类似项目. 然后 tide 这样的风格主题. 有 fisher 这样的包管理器. 虽然刚开始装的时候完全没弄懂. 谁知道那玩意是 fish里运行的, 我还以为写错了.

既然遇上了就不能放过. 也给tide 这样的牛逼主题给上快速脚本. 自己又弄了弄. 因为用上了workers的K V数据库, 添加内容 修改内容都是修改K的值, 太省心了.弄着不费力, 就更有动力了. 看着tide 给命令行右端加的 时间戳和 命令返回值. zsh有没有这玩意? 别说 一搜还真有, 那不废话了, 整上.

本来给 用zplug管理ohmyzsh的快速脚本, 分配了子域 zplug.zsh.one , get.zsh.one 也没加上 时间戳什么的, 然后在 Ubuntu里 试了试发现关于shell内代理的代码没有赋值部分. 唉, shell不愧是垃圾语言. 还得给输出到文件的内容里的 $前面加 \ , 又搞好. 然后再改 get的脚本? 算球, 直接一样吧, 反正是改进和提升, 所以就是现在的 基于 git管理的 可更新的脚本.

details

备用域名: zsh.es


统计下子域名:

zsh 相关: 运行方式 sh< (curl -L get.zsh.one)

get.zsh.one 主要的API域

zplug.zsh.one 同上

omz.zsh.one ohmyzsh 官方安装脚本( 副本, 可能更新不及时)

vvtt.zsh.one vite + vue3 + ts + tailwind css 生成工具, 项目详见 vvtt

v2jt.zsh.one vue2 + js + tailwind css 生成工具, 项目详见 v2jt

status.zsh.one 健康监测


fish 相关: 运行方式 curl -L tide.zsh.one | source

omf.zsh.one ohmyfish 官方安装脚本( 副本, 可能更新不及时)

fisher.zsh.one 根据 fisher 官方脚本修改, 加入了 fisher的安装动作

tide.zsh.one 根据上面 fisher 的脚本, 再加上 tide 的安装动作


End

项目主页: zsh.one

欢迎对项目提出意见和建议. Github: initdc