Mac下ssh终端之iTerm2 (Oh My Zsh + powerlevel10k)

文章目录

Mac下ssh终端之iTerm2

官网地址:https://iterm2.com/

iTerm2 是一款针对 macOS 系统的终端替代软件,作为 iTerm 的继任者,它将终端带入现代化时代,为经常使用终端的用户提供了丰富的增强功能。该软件是免费的开源项目,源代码托管在 Github 上,支持 macOS 10.14 或更新版本,通过众多实用的小功能累积成显著的用户体验提升。

常用快捷键

1、分窗口操作:shift+command+d(横向)command+d(竖向)

2、查找和粘贴:command+f,呼出查找功能,tab 键选中找到的文本,option+enter 粘贴

3、自动完成:command+; 根据上下文呼出自动完成窗口,上下键选择

4、粘贴历史:shift+command+h

5、回放功能:option+command+b

6、全屏:command+enter

7、光标去哪了?command+/

8、Expose Tabs:Option+Command+E

选中即复制:

iterm2有2种好用的选中即复制模式。

一种是用鼠标,在iterm2中,选中某个路径或者某个词汇,那么,iterm2就自动复制了。

另一种是无鼠标模式,command+f,弹出iterm2的查找模式,输入要查找并复制的内容的前几个字母,确认找到的是自己的内容之后,输入tab,查找窗口将自动变化内容,并将其复制。如果输入的是shift+tab,则自动将查找内容的左边选中并复制。

剪切历史:

输入command+shift+h,iterm2将自动列出剪切板的历史记录。如果需要将剪切板的历史记录保存到磁盘,在:Preferences > General > Save copy/paste history to disk:中设置。

全屏切换:

command+enter进入与返回全屏模式

Exposé所有Tab

command+option+e,并且可以搜索

常用配置

设置 Status bar

iterm2 提供了很多 Status bar,可在在终端页面显示更多关于本机的信息,如:CPU、内存、电池电量等。

点击 Configure Status bar 进入配置页面,这里将想要的 Status bar 拖入下面的方框即可。这里还推荐选择 Auto-Rainbow,这样 Status bar 就是以彩色的形式展示

iTerm2快速隐藏和显示

这个功能也非常使用,就是通过快捷键,可以快速的隐藏和打开 iTerm2。

打开 iTerm2,按 Command + , 键,打开 Preferences 配置界面,然后 Profiles → Keys → Hotkey,自定义一个快捷键就可以了,示例配置(option + Space)

iterm2 ssh

使用Profile配置(推荐)

  1. 创建SSH Profile
    打开iTerm2,进入 iTerm2 → Preferences → Profiles
    点击左下角 + 号创建新的Profile
  2. 配置Command
    在 General 选项卡的 Command 部分:
    选择 Command
    输入SSH连接命令,例如:
bash 复制代码
ssh username@hostname
# 或者指定端口
ssh -p 2222 username@hostname

cmd + o 打开服务器列表,方向键选择要登录的机器,回车。

如果只是简单配置SSH命令,每次连接确实需要输入密码。

解决方案:配置SSH密钥认证

生成SSH密钥对(如果还没有的话)

bash 复制代码
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"

按回车使用默认路径 ~/.ssh/id_rsa,可以设置密码短语或直接回车留空

  1. 将公钥复制到服务器
    手动复制:
bash 复制代码
cat ~/.ssh/id_rsa.pub | ssh -p 22 root@your-host "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"

在Profile的Command中改为:

bash 复制代码
ssh -p 22 -i ~/.ssh/id_rsa root@your-host

配置完成后,你的iTerm2 Profile就可以一键连接,无需输入密码了。

Oh My Zsh + powerlevel10配置

🌈 Step 1: 安装 Zsh ------ 升级你的终端基因!

Zsh 是一个强大的 shell,通过安装它,你可以获得更高效、更美观的终端体验。

🌟 Step 2: Oh My Zsh ------ 插件齐全,让效率拉满!

Oh My Zsh 是一个社区驱动的框架,它提供了大量的插件和主题,可以帮助你轻松管理你的终端。

⚡ Step 3: Powerlevel10k ------ 颜值巅峰的主题!

Powerlevel10k 是一个非常受欢迎的主题,它提供了自动补全、历史命令搜索、Git 状态显示等功能,让你的终端界面更加清晰、高效。

zsh

Linux 环境下的 shell 终端有 bash,ksh,tcsh,zsh,fish 等。使用人数排第一的自然是 bash,因为大部分的 Linux 发行版默认的就是 bash,使用人数排第二的就是 zsh。为什么用 zsh 呢?因为相比于默认的 bash,zsh 有更多的自定义选项,并支持扩展。因此 zsh 可以实现更强大的命令补全,命令高亮等一系列酷炫功能。

Mac系统默认使用bash作为终端,但是新的Mac系统已经默认使用zsh

oh-my-zsh

默认的 zsh 配置有点麻烦。因此一个叫 robbyrussel 的用户在 GitHub 上制作了一个配置文件 oh-my-zsh[2],这是目前为止最流行的 zsh 配置。

Oh My Zsh 是对主题的进一步扩展。

下载地址:https://github.com/robbyrussell/oh-my-zsh

via curl安装方式:

bash 复制代码
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"

然后你应该看到 Oh My Zsh 及默认主题 Robbyrussell 应用到了你的终端。

Oh My Zsh 还附带了其他的主题。然而,在本教程中,我将谈论一个特定的主题,即 Powerlevel10k。

Robbyrussell 风格 (p10k-robbyrussell.zsh):经典 Oh My Zsh 主题的增强版本

powerlevel10k

github:https://github.com/romkatv/powerlevel10k

Powerlevel10k 是 Zsh 的一个主题。它强调速度、灵活性和开箱即用体验。

Powerlevel10k 是一款基于 Zsh 构建的顶级终端主题,以其卓越的性能、高度的自定义性和即装即用的便捷性而闻名。无论你是追求极致效率的专业开发者,还是注重美学的终端爱好者,这款主题都能彻底改变你的命令行使用体验。

oh-my-zsh 有上百个自带主题,以及许许多多的外部主题,但使用人数最多,评价最好的主题,当属 powerlevel10k,它兼容 powerlevel9k,在性能上有 10-100 倍的提升,GitHub 上有 20.8 k 的🌟。

oh-my-zsh 可以大大提升你的 terminal 操作效率,当你忘记路径,直接 z + 你能想到的关键词,就可以跳转到你想要的路径。当你输入命令时,自动帮你回忆之前输入过的命令,当你输错指令时,命令会变成红色,正确时变成绿色,可谓非常贴心了。而 powerlevel10k 就是让你的终端高端大气上档次。

Oh My Zsh下安装:

打开终端,运行以下命令,从 GitHub 上克隆 Powerlevel10k 代码库,并将文件放到 Oh My Zsh 的配置文件夹中。

bash 复制代码
git clone --depth=1 https://github.com/romkatv/powerlevel10k.git "${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k"

中国用户可以使用 gitee.com 上的官方镜像加速下载.

bash 复制代码
git clone --depth=1 https://gitee.com/romkatv/powerlevel10k.git "${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k"

打开 ~/.zshrc,找到设置 ZSH_THEME 的行,并将其值更改为 "powerlevel10k/powerlevel10k"

重新启动你的终端,启动首次向导来设置 Powerlevel10k 主题。

如果你想再次重启配置向导,运行以下程序。你可以随心所欲地做,次数不限。

bash 复制代码
p10k configure
相关推荐
运维小欣18 分钟前
智能体选型实战指南
运维·人工智能
yy552722 分钟前
Nginx 性能优化与监控
运维·nginx·性能优化
爱吃土豆的马铃薯ㅤㅤㅤㅤㅤㅤㅤㅤㅤ1 小时前
Linux 查询某进程文件所在路径 命令
linux·运维·服务器
05大叔3 小时前
网络基础知识 域名,JSON格式,AI基础
运维·服务器·网络
安当加密3 小时前
无需改 PAM!轻量级 RADIUS + ASP身份认证系统 实现 Linux 登录双因子认证
linux·运维·服务器
dashizhi20153 小时前
服务器共享禁止保存到本地磁盘、共享文件禁止另存为本地磁盘、移动硬盘等
运维·网络·stm32·安全·电脑
卷福同学4 小时前
【养虾日记】QClaw操作浏览器自动化发文
运维·人工智能·程序人生·自动化
woho7788994 小时前
不同网段IP的网络打印机,打印、扫描设置
运维·服务器·网络
耗子会飞4 小时前
小白学习固定VM虚拟机的centos服务器的IP
运维·服务器·centos
门豪杰5 小时前
Ubuntu下安装Claude Code
linux·运维·ubuntu·claude·claude code