Atuin 使用 SQLite 数据库取代了你现有的 shell 历史,并为你的命令记录了额外的内容。此外,它还通过 Atuin 服务器,在机器之间提供可选的、完全加密的历史记录同步功能。
推荐文章:https://mp.weixin.qq.com/s/T7ln6PTOeWEdjtxnor7_eA
文章原文:https://ellie.wtf/posts/i-quit-my-job-to-work-full-time-on-my-open-source-project
安装
这里我使用的是 rust 包管理器来下载的 cargo,不知道如何安装 rust 的同学请移步 win10 安装配置 Rust 环境和简单使用。
下载
cargo install atuin
将下载很多像这样的依赖包
完成以后使用 atuin 将出现即安装成功
接着执行
curl https://raw.githubusercontent.com/rcaloras/bash-preexec/master/bash-preexec.sh -o ~/.bash-p
注意:在安装过程中有可能会出现:
只需要使用如下这个网站查询其 ip 地址。比如:
这里查询到 185.199.110.133 和 185.199.111.133 两个 Ip 地址,
我们在 shell 中 ping 一下是否是我们本地连接超时了
如果超时了的话就打开本地 C:\Windows\System32\drivers\etc
编辑 hosts
文件
在这个文件中添加 如下内容:
185.199.110.133 raw.githubusercontent.com
这样我们再次执行上面的命令即可成功下载了
导入
下载完毕后,我们需要导入一下本地使用的历史记录
# windows 不支持
echo 'eval "$(atuin init zsh)"' >> ~/.zshrc
# or
atuin import bash
atuin import zsh # etc
完成以后关闭这个 shell 然后重开一个使用 ↑ 或者 ctrl + c 你将会看见
你可以输入关键字进行查找,也可以一直向上看,非常方便!
注册同步
这里又有一个疑问了,如果想要将本地的历史记录同步到其他计算机怎么办,那就继续往下看吧!
首先需要向同步服务器注册。所有历史记录都是完全端到端加密的,因此没有服务器窥探您的风险(也可以同步到自己的服务器上去)。
# 注册
atuin register -u <YOUR_USERNAME> -e <YOUR EMAIL>
# 登录
atuin login -u <USERNAME>
# 退出
atuin logout
注册后,Atuin 将生成一个加密密钥并将其存储在本地。这是登录到其他计算机所必需的,可以通过 atuin key
查看。请不要与任何人分享此密钥!
手动同步
默认情况下,Atuin 将每小时同步一次您的历史记录。也可以自己手动进行同步
atuin sync