社区编辑申请
注册/登录
Atuin: 一款神奇的 Shell 历史记录管理工具,支持多终端实时同步
系统 Linux
Atuin 使用 SQLite 数据库取代了你现有的 shell 历史,并为你的命令记录了额外的内容,可以通过一个非常美观的 UI 界面进行操作。。此外,它还通过 Atuin 服务器,在节点之间提供可选的、完全加密的历史记录同步功能。

除了通过 UI 进行搜索之外,还可以通过命令来进行更细粒度的搜索控制,比如搜索昨天下午3点之后记录的所有成功的 make 命令,则可以使用下面的命令:

atuin search --exit 0 --after "yesterday 3pm" make

你可以使用作者托管的服务器,也可以使用自己的服务器!或者干脆不使用 sync 功能也可以。所有的历史记录同步都是加密的,所以数据安全方面完全不用担心。

特点

  • 重新绑定 up 和 ctrl-r 的全屏历史记录搜索 UI 界面
  • 使用 sqlite 数据库存储 shell 历史记录
  • 备份以及同步已加密的 shell 历史记录
  • 在不同的终端、不同的会话以及不同的机器上都有相同的历史记录
  • 记录退出代码、cwd、主机名、会话、命令持续时间,等等。
  • 计算统计数据,如 "最常用的命令"。
  • 不替换旧的历史文件
  • 通过Alt-<num>快捷键快速跳转到之前的记录
  • 通过 ctrl-r 切换过滤模式;可以仅从当前会话、目录或全局来搜索历史记录
  • 支持的 Shells:zsh、bash、fish

配置

使用默认的同步服务器

这将为您注册由项目作者托管的默认同步服务器。一切都是端到端加密的,所以你的信息是安全的!

bash <(curl https://raw.githubusercontent.com/ellie/atuin/main/install.sh)
atuin register -u <USERNAME> -e <EMAIL> -p <PASSWORD>
atuin import auto
atuin sync

仅离线 (不同步)

bash <(curl https://raw.githubusercontent.com/ellie/atuin/main/install.sh)
atuin import auto

安装

脚本方式 (推荐)

安装脚本将帮助您完成设置,确保您的 shell 正确配置。

# 不要以root身份运行,如果需要的话,会要求root。
bash <(curl https://raw.githubusercontent.com/ellie/atuin/main/install.sh)

使用cargo

最好使用 rustup 来设置 Rust 工具链,然后你就可以运行下面的命令:

cargo install atuin

Homebrew

brew install atuin

MacPorts

Atuin 也可以在 MacPorts 中找到

sudo port install atuin

Pacman

Atuin 在 Arch Linux 的 社区存储库 中可用。

pacman -S atuin

从源码编译安装

git clone https://github.com/ellie/atuin.git
cd atuin
cargo install --path .

Shell 插件

安装二进制文件后,需要安装 shell 插件。如果你使用的是脚本安装,那么这一切应该都会帮您完成!

zsh

echo 'eval "$(atuin init zsh)"' >> ~/.zshrc

或使用插件管理器:

zinit load ellie/atuin

bash

我们需要设置一些钩子(hooks), 所以首先需要安装 bash-preexec :

curl https://raw.githubusercontent.com/rcaloras/bash-preexec/master/bash-preexec.sh -o ~/.bash-preexec.sh
echo '[[ -f ~/.bash-preexec.sh ]] && source ~/.bash-preexec.sh' >> ~/.bashrc

然后设置 Atuin

echo 'eval "$(atuin init bash)"' >> ~/.bashrc

fish

添加

atuin init fish | source

到 ~/.config/fish/config.fish 文件中的 is-interactive 块中

常用命令

  1. atuin search <query>

Atuin 搜索支持带有 * 或 % 字符的通配符。默认情况下,会执行前缀搜索(即,所有查询都会自动附加通配符)。

参数

描述

??--cwd/-c??

列出历史记录的目录(默认:所有目录)

??--exclude-cwd??

不包括在此目录中运行的命令(默认值:none)

??--exit/-e??

按退出代码过滤(默认:none)

??--exclude-exit??

不包括以该值退出的命令(默认值:none)

??--before??

仅包括在此时间之前运行的命令(默认值:none)

??--after??

仅包含在此时间之后运行的命令(默认值:none)

??--interactive/-i??

打开交互式搜索 UI(默认值:false)

??--human/-h??

对时间戳和持续时间使用人类可读的格式(默认值:false)

示例

# 打开交互式搜索 TUI  
atuin search -i
# 打开预装了查询的交互式搜索 TUI
atuin search -i atuin
# 搜索所有以 cargo 开头且成功退出的命令。
atuin search --exit 0 cargo
# 从当前目录中搜索所有在2021年4月1日之前运行且失败的命令。
atuin search --exclude-exit 0 --before 01/04/2021 --cwd .
#搜索所有以 cargo 开头,成功退出且是在昨天下午3点之后运行的命令。
atuin search --exit 0 --after "yesterday 3pm" cargo
  1. atuin sync 手动触发同步

Atuin 可以将您的历史记录备份到服务器,并使用它来确保多台机器具有相同的 shell 历史记录。这都是端到端加密的,因此服务器操作员_永远_看不到您的数据!

任何人都可以托管一个服务器(尝试 atuin server start,更多文档将在后面介绍),但作者在 https://api.atuin.sh 上托管了一个。这是默认的服务器地址,也可以进行更改。同样,我_不能_看到您的数据,也不想。

注册一个同步账号

atuin register -u <USERNAME> -e <EMAIL> -p <PASSWORD>

用户名(USERNAME)必须是唯一的,电子邮件(EMAIL)仅用于重要通知(安全漏洞、服务更改等),注册后,意味着你也已经登录了 :) 同步应该从这里自动发生!

密钥

由于你的数据是加密的, Atuin 将为你生成一个密钥。它被存储在 Atuin 的数据目录里( Linus 上为 ~/.local/share/atuin)

你也可以通过以下方式获得它

atuin key

千万不要跟任何人分享密钥!

登录

如果你想登录到一个新的机器上,你需要你的加密密钥(atuin key)。

atuin login -u <USERNAME> -p <PASSWORD> -k <KEY>

注销

atuin logout

GitHub 仓库:https://github.com/ellie/atuin

责任编辑:庞桂玉 来源: 沙龙游戏怎么登入
相关推荐

2022-04-02 20:45:04

Hi3516开发板操作系统鸿蒙

2022-04-06 13:55:22

DockerLinux

2022-04-30 09:09:55

SecureFXSecureCRT

2022-05-16 15:35:00

漏洞黑客

2022-04-19 11:23:26

release3.1子系统鸿蒙

2022-05-09 16:33:03

EDR终端安全

2022-04-08 11:08:17

分布式数据接口同步机制

2022-04-15 09:23:29

Kubernetes面试题

2022-04-29 09:10:25

MobaXterm软件Linux

2022-05-11 14:05:11

区块链网络安全存储

2022-05-09 07:08:14

LinuxBashShell

2022-04-07 14:33:31

操作系统鸿蒙HarmonyOS

2022-05-14 08:05:18

Linux内存管理

2022-05-07 10:20:17

truncatedeleteMySQL

2022-03-22 10:57:37

Xshell开源SSH

2022-05-07 07:26:05

PyScriptHTMLPython 代码

2022-05-06 11:56:27

元宇宙大会

2022-05-10 06:01:17

Windows 11微软操作系统

2022-04-25 09:10:50

RK3568鸿蒙

2022-05-12 13:40:18

勒索软件数据泄露网络安全

同话题下的热门内容

除 Windows 11 外,微软刚发布的 KB5013942 也同样会导致 Windows 10 出错NVIDIA 终于发布开源 Linux GPU 内核模块为何 NVidia 的开源驱动程序对 Linux 如此重要?微软发布 Windows 11 Dev 预览版 25120:带来全新交互式桌面内容,支持 ARM64 设备Fedora 36 通过桌面大修吸引开发者,但它能取悦 Linux 之父吗?万字多图,搞懂 Nginx 高性能网络工作原理!80%的 Linux 使用者都不懂的内存问题Ubuntu 22.04 中安装最新 Wine 以运行 Windows 应用程序

编辑推荐

你应该知道的八款国产操作系统为什么你可能想要略过Ubuntu 17.04?HarmonyOS 2.0鸿蒙第二期开发者Beta公测申请指南让后端开发情何以堪?前端程序猿薪资大曝光谷歌“断供”华为!中国真写不出操作系统?
我收藏的内容
点赞
收藏

51CTO技术栈公众号

网站地图 菲律宾太城申博 真人百家乐 澳门星际赌场 澳门博彩公司
www.sbc883.com 申博手机下载版 太阳城申博代理加盟 太阳城游戏官网
申博登录网址 申博网址 网上百家乐 太阳城申博
申博太阳城直营网 澳门金沙娱乐场 盛618登入 太阳城申博官网
申博游戏平台 申博娱乐手机登入 太阳城集团 百家乐真人游戏