Macbook 终端 git 命令补全和提示
Mac OS自带的终端,用起来虽然有些不太方便,界面也不够友好,关键是在windows上用习惯了自动补全功能,在Mac上一个个的拼写单词是真的难受,逼着我记英文单词。
经过一天的磨合,我实在忍不了,在网上查到了iTerm2这个款终端工具,这是一款相对比较好用的终端工具。
iTerm2常用操作包括主题选择、声明高亮、自动填充建议、隐藏用户名和主机名、分屏效果等。这里主要介绍我使用的自动补全建议、声明高亮,另外几个功能,如果有需求,可以在 参考资料 中找到。
iTerm2 下载与安装
iTerm2下载地址:https://www.iterm2.com/downloads.html
注意:下载的是压缩文件,解压后直接双击执行程序文件,或者直接将它拖到 Applications 目录下。
也可以直接使用Homebrew进行安装:
brew cask install iterm2
iTerm2主题配置,请参考 Mac下iTerm2的安装与配置
Homebrew 安装方法请参考 macbook 安装 Git 和 安装 Homebrew
查看 Mac 系统是否使用 zsh
Mac系统默认使用bash作为终端,但是新的Mac系统已经默认使用zsh,查看方式:
cat /etc/shells
/bin/bash
/bin/csh
/bin/dash
/bin/ksh
/bin/sh
/bin/tcsh
/bin/zsh
bash与zsh切换命令:
chsh -s /bin/zsh
chsh -s /bin/bash
bash与zsh配置文件:
- bash的配置文件:
~/.bash_profile - zsh的配置文件:
~/.zshrc
安装配置 zsh
Zsh 和 bash 一样,是一种 Unix shell,但大多数 Linux 发行版都默认使用 bash shell。但 Zsh有强大的自动补全参数和自定义配置功能等等,Github地址:https://github.com/robbyrussell/oh-my-zsh
- 安装命令:
sh -c “$(curl -fsSL https: //raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)”
或
- 使用 Homebrew 进行安装
Mac 系统自带了zsh, 一般不是最新版,如果需要最新版可通过Homebrew来安装。
brew install zsh
可通过查看zsh的版本。
zsh --version
安装完成以后,将zsh设置为默认的Shell
chsh -s /bin/zsh
安装 oh-my-zsh
oh-my-zsh 帮我们整理了一些常用的 Zsh 扩展功能和主题:https://github.com/robbyrussell/oh-my-zsh
在终端输入命令:
sh -c “$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)”
Cloning into '/root/.oh-my-zsh'...
remote: Counting objects: 712, done.
remote: Compressing objects: 100% (584/584), done.
remote: Total 712 (delta 15), reused 522 (delta 4), pack-reused 0
Receiving objects: 100% (712/712), 443.58 KiB | 27.00 KiB/s, done.
Resolving deltas: 100% (15/15), done.
Checking connectivity... done.
Looking for an existing zsh config...
Using the Oh My Zsh template file and adding it to ~/.zshrc
Copying your current PATH and adding it to the end of ~/.zshrc for you.
Time to change your default shell to zsh!__ ______ / /_ ____ ___ __ __ ____ _____/ /_
/ __ \/ __ \ / __ `__ \/ / / / /_ / / ___/ __ \
/ /_/ / / / / / / / / / / /_/ / / /_(__ ) / / /
\____/_/ /_/ /_/ /_/ /_/\__, / /___/____/_/ /_//____/ ....is now installed!Please look over the ~/.zshrc file to select plugins, themes, and options.
p.s. Follow us at https://twitter.com/ohmyzsh.
p.p.s. Get stickers and t-shirts at http://shop.planetargon.com.
安装完成以后,默认Shell的 ~/.bashrc 文件默认不再加载了,替代的是 ~/.zlogin 和 ~/.zshrc 。所以如果你在 ~/.bashrc 里配置了某些设置,需要把她们复制到 ~/.zshrc 中。
oh my zsh 其他安装方式参考 Mac下iTerm2的安装与配置
oh my zsh 目录结构
进入~/.oh-my-zsh目录后,看看该目录的结构
ls ~/.oh-my-zsh
CODE_OF_CONDUCT.md SECURITY.md log themes
CONTRIBUTING.md cache oh-my-zsh.sh tools
LICENSE.txt custom plugins
README.md lib templates
lib 提供了核心功能的脚本库
tools 提供安装、升级等功能的快捷工具
plugins 自带插件的存在放位置
templates 自带模板的存在放位置
themes 自带主题文件的存在放位置
custom 个性化配置目录,自安装的插件和主题可放这里
安装自动补全插件
在终端输入命令:
cd ~/.oh-my-zsh/custom/plugins
git clone https://github.com/zsh-users/zsh-autosuggestions.git
安装命令高亮插件
在终端输入命令:
cd ~/.oh-my-zsh/custom/plugins
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git
配置 .zshrc 文件
在终端输入命令:
vim ~/.zshrc
打开.zshrc 文件,进入vim 编辑器模式 (按i进入编辑模式)
在 ~/.zshrc 中添加以下内容(我添加在文件末尾):
source ~/.oh-my-zsh/custom/plugins/zsh-autosuggestions/zsh-autosuggestions.zsh
source ~/.oh-my-zsh/custom/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
在 ~/.zshrc 中修改 plugins=(git) 为:
plugins=(git zsh-autosuggestions zsh-syntax-highlighting)
# Which plugins would you like to load?
# Standard plugins can be found in $ZSH/plugins/
# Custom plugins may be added to $ZSH_CUSTOM/plugins/
# Example format: plugins=(rails git textmate ruby lighthouse)
# Add wisely, as too many plugins slow down shell startup.
plugins=(git zsh-autosuggestions zsh-syntax-highlighting)source $ZSH/oh-my-zsh.sh
保存修改
按 esc 键 =>输入:wq!=>按 enter 键 退出编辑
让配置生效
在终端执行命令
source ~/.zshrc
vim 编辑器基本语法,请参考 macbook 安装 Git 和 安装 Homebrew
参考:
Mac下iTerm2的安装与配置
mac git命令按Tab不能自动补全解决方法
如何配置MAC的终端自动补全命令行,并忽略大小写
MacOS 安装配置 zsh
Mac 终端配置 oh-my-zsh 和自动补全以及命令高亮
Mac 常用的 20 款效率神器推荐
相关文章:
Macbook 终端 git 命令补全和提示
Mac OS自带的终端,用起来虽然有些不太方便,界面也不够友好,关键是在windows上用习惯了自动补全功能,在Mac上一个个的拼写单词是真的难受,逼着我记英文单词。 经过一天的磨合,我实在忍不了,在网上…...
2024考研408-计算机网络 第六章-应用层学习笔记
文章目录 前言一、网络应用模型1.1、认识应用层功能和特点1.2、网络应用层模型:1.2.1、客户/服务器(C/S)模型1.2.2、P2P模型 二、DNS系统2.1、认识DNS与IP地址的关系2.2、DNS解析的大致流程2.3、域名的分类2.4、域名服务器的分类2.5、域名解析…...
使用阿里云服务器部署和使用GitLab
本文阿里云百科分享使用阿里云服务器部署和使用GitLab,GitLab是Ruby开发的自托管的Git项目仓库,可通过Web界面访问公开的或者私人的项目。本教程介绍如何部署和使用GitLab。 目录 准备工作 部署GitLab环境 使用GitLab 登录GitLab 生成密钥对文件并…...
React入门学习笔记3
事件处理 通过onXxx属性指定事件处理函数(注意大小写) React使用的是自定义(合成)事件, 而不是使用的原生DOM事件——为了更好的兼容性 eg:οnclick》onClickReact中的事件是通过事件委托方式处理的(委托给组件最外层的元素)——为了更高效通过event.target得到发生…...
从零开始理解Linux中断架构(25)中断运行全景实例
前面我们基本理解了软中断处理的基本框架,为了对中断调用有一个全景的直观感受,我们在网卡驱动程序的中断函数dump_stack,观看一下各种情况下的软中断调用call Stack的情况。 (1)ksoftirqd处理软中断的情况 有线以太网卡NAPI轮询的调用栈 [ 106.374117] Hardware name: K…...
go-zero 是如何实现计数器限流的?
原文链接: 如何实现计数器限流? 上一篇文章 go-zero 是如何做路由管理的? 介绍了路由管理,这篇文章来说说限流,主要介绍计数器限流算法,具体的代码实现,我们还是来分析微服务框架 go-zero 的源…...
【考研复习】24王道数据结构课后习题代码|第3章栈与队列
文章目录 3.1 栈3.2 队列3.3 栈和队列的应用 3.1 栈 int symmetry(linklist L,int n){char s[n/2];lnode *pL->next;int i;for(i0;i<n/2;i){s[i]p->data;pp->next;}i--;if(n%21) pp->next;while(p&&s[i]p->data){i--;pp->next;}if(i-1) return 1;…...
java中excel文件下载
1、System.getProperty(user.dir) 获取的是启动项目的容器位置 2、 Files.copy(sourceFile.toPath(), destinationFile.toPath(), StandardCopyOption.REPLACE_EXISTING); StandardCopyOption.REPLACE_EXISTING 来忽略文件已经存在的异常,如果存在就去覆盖掉它Sta…...
29 | 广州美食店铺数据分析
广州美食店铺数据分析 一、数据分析项目MVP加/价值主张宣言 随着经济的快速发展以及新媒体的兴起,美食攻略、美食探店等一系列东西进入大众的眼球,而人们也会在各大平台中查找美食推荐,因此本项目做的美食店铺数据分析也是带有可行性的。首先通过对广东省的各市美食店铺数量…...
fastApi基础
1、fastApi简介 官方文档:https://fastapi.tiangolo.com/ 源码: https://github.com/tiangolo/fastapi 2、环境准备 安装python 安装pycharm 安装fastAPI 安装 uvicorn 查看已经安装的第三方库:pip list 查看pip 配置信息:pip co…...
Mysql整理二 - 常见查询语句面试题(附原表)
表结构,创建原表的代码在最后 -- cid课程id; tid老师id; sid学生id; select * from t_mysql_course; select * from t_mysql_score; select * from t_mysql_student; select * from t_mysql_teacher; 1. 查询" 01 “课程比” 02 "课程成绩高的学生的信息…...
Python - 读取pdf、word、excel、ppt、csv、txt文件提取所有文本
前言 本文对使用python读取pdf、word、excel、ppt、csv、txt等常用文件,并提取所有文本的方法进行分享和使用总结。 可以读取不同文件的库和方法当然不止下面分享的这些,本文的代码主要目标都是:方便提取文件中所有文本的实现方式。 这些库的…...
Codeforces Round 892 (Div. 2) C. Another Permutation Problem 纯数学方法 思维题
Codeforces Round 892 (Div. 2) C. Another Permutation Problem 源码: #include <iostream> #include <algorithm> #include <set> #include <map> #include <queue> #include <vector> #include <stack> #include &l…...
持续输出:自媒体持续输出文字内容、视音频创作(视频课程、书籍章节)
以下是自媒体持续输出文字内容、视音频创作的最佳方法: 灵感来源:寻找灵感来源是自媒体创作的重要一环。可以从日常生活、网络热点、行业动态等方面寻找创作灵感。 确定主题:在确定主题的时候,需要根据读者和观众的需求ÿ…...
篇十七:备忘录模式:恢复对象状态
篇十七:"备忘录模式:恢复对象状态" 开始本篇文章之前先推荐一个好用的学习工具,AIRIght,借助于AI助手工具,学习事半功倍。欢迎访问:http://airight.fun/。 另外有2本不错的关于设计模式的资料&…...
初识mysql数据库之图形化界面
目录 一、好用的数据库图形化界面软件 1. Navicat 2. SQLyog 3. MYSQL Workbench 二、MYSQL Workbench基本使用 1. 安装 2. 远端连接 3. 执行sql语句 一、好用的数据库图形化界面软件 在以前的文章中,一共介绍了两种使用数据库的方式,分别为在l…...
APP外包开发的H5开发框架
跨平台移动应用开发框架允许开发者使用一套代码在多个操作系统上构建应用程序,从而节省时间和资源。以下是一些常见的跨平台移动应用开发框架以及它们的特点,希望对大家有所帮助。北京木奇移动技术有限公司,专业的软件外包开发公司࿰…...
高性能跨平台网络通信框架 HP-Socket v5.9.3
项目主页 : http://www.oschina.net/p/hp-socket开发文档 : https://www.docin.com/p-4478351216.html下载地址 : https://github.com/ldcsaa/HP-SocketQQ Group: 44636872, 663903943 v5.9.3 更新 一、主要更新 问题修复:通过 POST/PUT 等带有请求内容的 HTTP 方…...
Vue3.2+TS在v-for的时候,循环处理时间,将其变成xx-xx-xx xx:xx:xx格式,最后教给大家自己封装一个时间hooks,直接复用
Vue3.2TS在v-for的时候,循环处理时间,将其变成xx-xx-xx xx:xx:xx格式 最后教给大家自己封装一个时间hooks,直接复用 1.没有封装,直接使用 <template><div><ul><li v-for"item,index in arr" :k…...
05 mysql innodb page
前言 最近看到了 何登成 大佬的 "深入MySQL源码 -- Step By Step" 的 pdf 呵呵 似乎是找到了一些 方向 之前对于 mysql 方面的东西, 更多的仅仅是简单的使用[业务中的各种增删改查], 以及一些面试题的背诵 这里会参照 MySQL Internals Manual 来大致的看一下 i…...
如何用Latent Consistency Models生成商业级AI图像:3步快速上手实战案例
如何用Latent Consistency Models生成商业级AI图像:3步快速上手实战案例 【免费下载链接】latent-consistency-model Latent Consistency Models: Synthesizing High-Resolution Images with Few-Step Inference 项目地址: https://gitcode.com/gh_mirrors/la/lat…...
0003.无重复字符的最长子串
题目链接3. 无重复字符的最长子串 - 力扣(LeetCode)### 题目描述给定一个字符串 s, ,请你找出其中不含有重复字符的 最长子串 的长度。### 题目示例示例 1 :plain输入: s "abcabcbb"输出: 3 解释: 因为无重复字符的最长子串是 &qu…...
ODrive配置AS5047P磁编码器避坑指南:从SPI接线、参数设置到三种上电校准模式的深度解析
ODrive与AS5047P磁编码器实战:SPI配置优化与三种启动模式深度解析 在机器人关节、云台稳定系统等高精度运动控制场景中,无刷电机与绝对值磁编码器的组合已成为行业标配。AS5047P作为14位分辨率的SPI接口磁编码器,配合ODrive开源驱动器&#x…...
【SQL注入】SQLMAP v1.10.3 稳定汉化版
简介 CN_Sqlmap 是由 GitHub 开发者 Datch666 基于开源渗透测试工具 sqlmap 深度汉化的版本,专为中文用户优化,降低英语使用门槛。该工具专注于自动化检测和利用 Web 应用程序中的SQL 注入漏洞,帮助安全测试人员高效验证目标系统的安全性。通…...
SDMatte模型部署故障排查手册:从环境配置到推理失败的常见问题
SDMatte模型部署故障排查手册:从环境配置到推理失败的常见问题 1. 引言 最近在星图平台部署SDMatte模型时,遇到了不少坑。作为一款强大的图像抠图模型,SDMatte在实际部署过程中可能会遇到各种环境配置和调用问题。本文将汇总我在部署过程中…...
技术揭秘:如何构建Unity URP高性能卡通渲染着色器
技术揭秘:如何构建Unity URP高性能卡通渲染着色器 【免费下载链接】UnityURPToonLitShaderExample A very simple toon lit shader example, for you to learn writing custom lit shader in Unity URP 项目地址: https://gitcode.com/gh_mirrors/un/UnityURPToon…...
如何快速掌握PyWavelets:10个实用小波变换技巧
如何快速掌握PyWavelets:10个实用小波变换技巧 【免费下载链接】pywt PyWavelets - Wavelet Transforms in Python 项目地址: https://gitcode.com/gh_mirrors/py/pywt PyWavelets是一个强大的Python库,专门用于实现小波变换,为信号处…...
Algebird近似算法大全:从BloomFilter到CountMinSketch
Algebird近似算法大全:从BloomFilter到CountMinSketch 【免费下载链接】algebird Abstract Algebra for Scala 项目地址: https://gitcode.com/gh_mirrors/al/algebird Algebird是一个强大的Scala抽象代数库,提供了多种高效的近似算法实现&#x…...
LL库写ST7789驱动
网络上有很多ST7789的驱动是用HAL库写的,下载以后的Flash占用太大,没法放足够的字库。 更糟糕的是,市面上很多的国产stm32f103c8t6的flash是阉割版的,只有32kb。所以我第一次在我的阉割开发板上面下载HAL库的驱动时,就…...
当代码几乎免费时,程序员还剩下什么?
这是一个正在发生的转变:写出“能跑的代码”成本正无限趋近于零,但写出“正确的系统”依然是昂贵的。本文将探讨在 AI 编程时代,工程师真正的护城河在哪里,以及我们应该如何重塑自己的工作方式。 🧱 一、现状ÿ…...
