neofetch
neofetch 系统信息展示工具。
#tech / ops / linux
#type / concept
#status / growing
neofetch
一句话定义
neofetch 是一个 CLI 系统信息工具,在终端中以 ASCII 艺术 logo 搭配的方式展示操作系统、内核、CPU、GPU、内存、Shell、桌面环境等系统信息。
核心机制 / 工作原理
neofetch 用 Bash 编写,启动时读取系统各处的信息源(/etc/os-release、/proc/cpuinfo、free、wmctrl 等),然后将信息格式化输出到终端左侧(或右侧)绘制 ASCII logo。
它展示的信息
- OS:发行版名称和版本
- Kernel:内核版本号
- Uptime:系统运行时间
- Packages:已安装包数量(按包管理器分类)
- Shell:当前使用的 Shell 和版本
- Resolution:屏幕分辨率
- DE/WM:桌面环境 / 窗口管理器
- Theme:GTK/图标主题
- Terminal:终端模拟器名称
- CPU:处理器型号和核心数
- GPU:显卡型号
- Memory:已用/总内存
安装
# Debian/Ubuntu
sudo apt install neofetch
# Arch Linux
sudo pacman -S neofetch
# macOS
brew install neofetch
# 从源码
git clone https://github.com/dylanaraps/neofetch
cd neofetch && sudo make install
自定义配置
首次运行 neofetch 后,配置文件创建在 $HOME/.config/neofetch/config.conf。
可通过 printinfo() 函数控制:
- 显示/隐藏哪些信息项
- 信息的颜色和分隔符
- ASCII logo 的来源(内置、自定义图片、w3m 图片显示)
- 输出位置(左/右)
# 使用自定义 ASCII logo
neofetch --ascii ~/my-logo.txt
# 只显示特定信息
neofetch --info "OS" "Kernel" "Memory"
# 显示小 ASCII art
neofetch --size 200px --crop_mode fit

配置文件示例结构:

与替代工具的关系
| 工具 | 语言 | 状态 | 特点 |
|---|---|---|---|
| neofetch | Bash | 已归档(2024) | 经典、生态最广 |
| fastfetch | C | 活跃维护 | 速度快 10x+、功能更丰富 |
| screenfetch | Bash | 停止维护 | neofetch 的前身 |
| pfetch | POSIX sh | 停止维护 | 极简版,信息少 |
| macchina | Rust | 活跃 | 跨平台、可扩展 |
边界与常见误解
- neofetch 的项目已被作者归档(archived),不再接受 PR 和更新,但仍可正常使用。
- neofetch 不是性能监控工具(那是 htop/btop 的事),它只做静态快照。
- “系统信息”不是实时数据,每次运行才采集一次。
- fastfetch 是目前社区推荐的替代品,功能和速度都更优。
Related notes
- Linux
- [[terminal|终端]]
- [[bash|Bash]]
- [[fastfetch|fastfetch]]