惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

F
Fortinet All Blogs
宝玉的分享
宝玉的分享
酷 壳 – CoolShell
酷 壳 – CoolShell
T
The Exploit Database - CXSecurity.com
Help Net Security
Help Net Security
腾讯CDC
Project Zero
Project Zero
C
CXSECURITY Database RSS Feed - CXSecurity.com
IT之家
IT之家
C
Cyber Attacks, Cyber Crime and Cyber Security
T
Tailwind CSS Blog
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
D
Darknet – Hacking Tools, Hacker News & Cyber Security
L
LINUX DO - 最新话题
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
T
Threatpost
N
News | PayPal Newsroom
C
Cybersecurity and Infrastructure Security Agency CISA
Hacker News - Newest:
Hacker News - Newest: "LLM"
S
SegmentFault 最新的问题
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
P
Proofpoint News Feed
A
Arctic Wolf
B
Blog RSS Feed
Forbes - Security
Forbes - Security
P
Privacy & Cybersecurity Law Blog
Attack and Defense Labs
Attack and Defense Labs
V2EX - 技术
V2EX - 技术
P
Proofpoint News Feed
I
Intezer
Application and Cybersecurity Blog
Application and Cybersecurity Blog
阮一峰的网络日志
阮一峰的网络日志
aimingoo的专栏
aimingoo的专栏
T
Tenable Blog
MyScale Blog
MyScale Blog
U
Unit 42
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
WordPress大学
WordPress大学
W
WeLiveSecurity
D
DataBreaches.Net
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
G
GRAHAM CLULEY
有赞技术团队
有赞技术团队
Martin Fowler
Martin Fowler
罗磊的独立博客
The Last Watchdog
The Last Watchdog
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
V
Vulnerabilities – Threatpost
美团技术团队
Microsoft Security Blog
Microsoft Security Blog

Oragekk's Blog

OpenSpec 技术分享:用规格驱动 AI 编程 ChatGPT&Codex订阅教程 一个 waline 评论系统bug引发的思考 Jenkins 远程触发构建踩坑记 Git SSH 密钥配置 初识Rust vuepress-plugin-meting2 谷歌发布多平台应用开发神器Project IDX!PaLM 2加持 Vue常见优化手段 Vue2响应式原理解析 Dart 中的并发 Flutter 工作原理 如何利用GitHub Action提交URL到搜索引擎 提交URL到搜索引擎(百度、Bing、Google) GitHub Actions 使用介绍 素材设计 前端-Q&A 浏览器的事件循环 你不知道的 CSS 之包含块 CSS 属性计算过程 Vercel deploy忽略指定分支 评论插件 Waline 之邮件通知配置 公开API 使用Bing API提交网站URL Flutter 基础大集合 关于本站 关于本站 关于我 Markdown 展示 使用n命令管理node版本 幻灯片页 ReactNative State(状态) ReactNative开发环境配置,ES6语法介绍 ReactNative介绍 更优雅强大的终端ZSH 神经网络模型训练 YYCache优秀的缓存设计 WebViewJavascriptBridge NSError WCDB漫谈 优雅的实现TableViewCell单选 初探机器学习框架CoreML 深入理解swift中闭包的捕捉语义 ijkPlayer 集成 iOS 配置https iOS timelineLogistics iOS Cookie的配置及使用 WKWebView拦截URL WKWebView使用及自适应高度 textfield限制输入字符 评论系统从多说迁移到disqus指南 利用Runtime进行快速归档 iOS 10.3 keychain 重大更新 Cell的accessoryType属性标记单元格之后,出现的重用问题 通过UserAgent判断设备 AFNetworking A memory leak 一人一句宋词 OC 中的枚举类型 iOS - Image compression algorithm iOS程序启动原理(下) iOS程序启动原理(上) NSOperatioin TableView性能优化 Runloop Test Three ways to call Update Cocoapods 1.1.1 减小iOS-App或者静态库体积 Jekyll旧站回忆 JavaScript ES6 CommonJS,RequireJS,SeaJS 归纳笔记 Unix/Linux 扫盲笔记
终端究极美化iTerm2+Pure
Oragekk · 2023-03-25 · via Oragekk's Blog

提示

之前介绍了ZSH的安装和使用,这次把最终成果介绍一下,就是ZSH + iTerm2 + Pure

前置工作:安装ZSH,请参照之前的文章👉zsh安装

目录

先看效果图

界面
界面
命令提示
命令提示
流输出
流输出

安装pure

👉官方文档

可以使用 npm 或手动安装。需要 Git 2.15.2+ 和 ZSH 5.2+。已知旧版本的 ZSH 可以工作,但不推荐使用。

npm

npm install --global pure-prompt

手动

# 在某处克隆此 repo。在这里我们将使用 $HOME/.zsh/pure
mkdir -p "$HOME/.zsh"
git clone https://github.com/sindresorhus/pure.git "$HOME/.zsh/pure"

如果是手动安装的,将克隆的 repo 的路径添加到 $HOME/.zshrc 中的 $fpath 。

# .zshrc
fpath+=($HOME/.zsh/pure)

将以下内容复制到 .zshrc文件中

autoload -U promptinit; promptinit
prompt pure

在 .zshrc 中设置 ZSH_THEME="" 以禁用 oh-my-zsh 主题。

到这里就基本完成了,如果要基于pure做详细定制,请参考文档

iTerm2

👉戳这里下载 官方下载地址

效果图我自用的配置文件在这里 👉 链接 密码:74aq

1.主题配置

访问iTerm2主题网站👉iTerm2-Color-Schemes

可以下载zip包并解压到本地,进入解压缩的文件目录,找到schemes文件夹,里边全是主题配置,可以对照github上的效果图来选择

导入
导入

2. 标签页配色

标签配色默认为黑色,不能与操作页面保持统一

默认
默认

打开iTerm2,打开Preferences配置界面,Appearence -> General,将 Theme 改为 Minimal

3. 设置 Status bar

iTerm2 提供了不少的 Status bar,开启后我们可以在终端的最上方非常方便的实时查看本机的一些信息。

打开iTerm2,打开Preferences配置界面,Profiles -> session-> 勾选 Status bar enable-> configure Status bar,选择自己想要的展示内容即可。向下托动放入Active Components 中即可,我这里只选了CPU、内存、网络

4. 光标选择

iterm提供了三种光标可供选择:_、|、[]。

打开iTerm2,打开Preferences配置界面,Profiles -> text-> cursor,选择自己想要的光标即可。

5.配置SSH快速连接

#首先在/Users目录下按照如下命令创建sh脚本
cd /Users/

#创建iterm文件夹
mkdir iterm
 
#进入iterm文件夹
cd iterm

#创建myserver.sh文件
touch myserver.sh

#编辑myserver.sh文件
vi myserver.sh

如果出现没有权限,就命令前面加上sudo

键盘输入i编辑文件,插入以下内容:

#!/usr/bin/expect
set timeout 30
spawn ssh -p [lindex $argv 0] [lindex $argv 1]@[lindex $argv 2]
expect {
        "(yes/no)?"
        {send "yes\n";exp_continue}
        "password:"
        {send "[lindex $argv 3]\n"}
}
interact

myserver.sh文件中变量解释:

[lindex $argv 0]:端口号
[lindex $argv 1]:服务器用户名
[lindex $argv 2]:服务器IP地址
[lindex $argv 3]:服务器密码

插入完成后键盘esc 然后输入:wq退出,接下来给文件赋权

chmod 777 myserver.sh
打开iTerm2,打开Preferences配置界面,Profiles -> general,左下角点击+号,新建profile,参考下面图片在对应位置输入内容即可。

Name:根据需求输入,通常选择标识性较强的内容便于区分,例如服务器的IP地址

Command:这里选择login Shell

Send text at start :填写格式形如A B C D E这样,每一个部分之间用空格隔开,根据自己实际情况填写,下面是对每一部分内容的解释

相关信息

A 代表咱们上面写的本机保存sh脚本的路径:/Users/iterm/myserver.sh

B 代表服务器端口号一般远程连接端口为:22

C 代表服务器用户名一般为:root

D 代表服务器IP:公网IP填写

E 代表服务器密码:根据自己实际的服务器密码填写
设置好之后打开iTerm2,点击profiles,点击前面自己新增的连接远程服务器的profile的名字

首次连接需要输入一次服务器密码,之后再连接就免密码登陆了

结语

当然这里只介绍一部分,还有很多高级玩法,需要用到的时候自己去研究一下了