当前位置: 首页 > article >正文

在离线无管理员权限的情况下为Linux配置oh-my-zsh(zsh+oh my zsh+powerlevel10k)

0. 前言

最近接触到一台离线环境下的Linux(CentOS7),自带的终端实在过于丑陋(tcsh),但是搜半天改zsh的教程要么要网、要么要管理员权限,奋而自己折腾半天记录于此以作备忘。

所需环境

  • 一台能连接网络的电脑(Windows/Linux均可,无需管理员权限),需配置有git,我这里以Windows为例,Linux应该更简单
  • 需要配置的无网无管理员权限的Linux,需配置有CMake

参考链接,侵删

Linux 以非root用户安装zsh&配置on my zsh

0.5 预备

如前文言,我们可能会从windows下载文件传输到Linux上,但是这里就会有一个众所周知的问题,那就是行尾问题,具体而言就是执行脚本的时候可能会报no Command ^M的错误,解决方法就是跑一遍find ./ -type f -exec dos2unix -f {} \;

1. 安装zsh

现在Windows上找个位置建立一个文件夹并打开

mkdir zsh

在这个文件夹安装最新版的zsh:地址,或者使用wget手动安装:

wget https://sourceforge.net/projects/zsh/files/latest/download/zsh-XXX.tar.xz 
(xxx换成最新的版本号)

下载下来是一个.tar.xz压缩包,传送到Linux上,解压编译安装

./configure --prefix=$HOME/zsh #表示安装到家目录中的zsh文件夹下,可以自己设置想要的路径
make && make install

然后添加环境变量

export PATH=$HOME/zsh/bin:$PATH
# 这里需要修改成你安装的路径

这个是bash版本,大部分人默认终端应该是这个,如果你和我一样默认是tcsh,那就这么设:

setevn PATH ${HOME}/zsh/bin:${PATH}

如果不知道自己是哪个终端,就查看:

echo $0

然后在~/.cshrcbash的话是~/.bashrc)末尾添加:

# tcsh用这个
[-f ${HOME}/zsh/bin/zsh ] && exec ${HOME}/zsg/bin/zsh
# bash用这个
[-f $HOME/zsh/bin/zsh ] && exec $HOME/zsg/bin/zsh

这个时候你输入zsh或者重新开一个终端应该就会切换到zsh,这时候你想要切换终端回去的话会发现输入你以前的终端名称是切不过去的,那是因为上面改的文件每次打开终端都会跑一遍,跑到最后的exec zsh自然又切回zsh了,解决方法是使用-f参数,也就是bash -f,这样就可以跳过那个文件打开终端,用完了再Ctrl + D关闭即可。

另外,如果你用的是tcsh,并在~/.cshrc中声明过别名(alias),那么好像这里不能直接用,要在.zshrc里手动加上去。

这个时候重新开启一个终端,键入echo $0,不出意外的话应该自动打开了zsh

2. 安装oh my zsh

官网上提供了很多种安装方法,但是基本都是自动化执行脚本,由于我们这既没网又没管理员,我们还是选择git手动安装。

首先我们需要在Windows下找个地方执行git clone

git clone git://github.com/robbyrussell/oh-my-zsh.git ./.oh-my-zsh

然后将这个文件夹传到Linux上,放在~/.oh-my-zsh,注意一定要在~下,然后将template下的配置文件拷贝到~/.zshrc

然后添加两个插件,一个是zsh-syntax-highlighting,一个是zsh-autosuggestions,类似的,先在windows下下载:

git clone https://github.com/zsh-users/zsh-syntax-highlighting.git

git clone https://github.com/zsh-users/zsh-autosuggestions 

如何将下载下来的东西打包传送到Linux上,拷贝到如下目录下:

${ZSH_CUSTOM:-~/.oh-my-zsh}/plugins/zsh-syntax-highlighting
${ZSH_CUSTOM:-~/.oh-my-zsh}/plugins/zsh-autosuggestions

然后修改~/.zshrc

plugins=(git zsh-syntax-highlighting zsh-autosuggestions)

另外可以看到刚刚那个目录下还预装了一大堆插件,这里建议启用z,可以实现快速文件夹跳转,直接跳到打开过的文件夹,由于我这里使用了svn,因此把svn相关的也启用了。

最后source ~/.zshrc

3. 安装powerlevel10k

oh my zsh有很多主题,这里有一个主题的受欢迎排名,我就选择了powerlevel10k(这个链接是官方安装教程),主要奔着显示指令cost时间去的。

在这里插入图片描述

首先我们要安装扩展字体,下载这四个字体,你也可以下载别的Nerd Font:

  • MesloLGS NF Regular.ttf
  • MesloLGS NF Bold.ttf
  • MesloLGS NF Italic.ttf
  • MesloLGS NF Bold Italic.ttf
    下载好后放在~/.font下,没有就自己创一个,然后再fc-cache -fv刷新一下缓存,然后把终端环境的字体更换成我们刚刚的那个。

做好字体准备后安装主题,官方有一个离线安装的教程(链接),我是这样的:

git clone --depth=1 https://github.com/romkatv/powerlevel10k.git

同样地,Windows上下好后传过去:

 ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k

然后打开~/.zshrc,编辑:

ZSH_THEME="powerlevel10k/powerlevel10k"

然后重新打开终端,这个时候应该会出引导配置,一步步配置就行了,不过如果没网的话可能会出git状态初始化失败的错误,可以去配置里把打印错误的行删掉或者干脆关掉powerlevel10k里CVS的插件。

4. 后记

没网没root,我折腾了半天才搞好这一套环境,这是根据回忆写的,难免有纰漏,有问题欢迎提。


http://www.kler.cn/a/512031.html

相关文章:

  • c++ vector
  • EasyControl:首个登陆AWS Marketplace的中国MDM先锋
  • ASP.NET Core 中的 JWT 鉴权实现
  • iOS 性能优化:实战案例分享
  • 将n变为一个可以被表示为2^{a}+2^{b}的正整数m
  • 使用 Java 和 FreeMarker 实现自动生成供货清单,动态生成 Word 文档,简化文档处理流程。
  • 2025年免费量化交易软件——PTrade(含开通攻略)
  • .Net Core微服务入门全纪录(六)——EventBus-事件总线
  • 如何用selenium来链接并打开比特浏览器进行自动化操作(1)
  • 30天开发操作系统 第 16 天 -- 多任务 v2.0
  • 2025/1/20 学习Vue的第三天
  • 云计算技术深度解析与实践案例
  • OpenCV笔记3-图像修复
  • [深度学习]机器学习和深度学习
  • ElasticSearch索引别名的应用
  • Ubuntu 24.04 LTS 系统语言英文改中文
  • CSS 圆形头像和破图时显示默认图片
  • 高水平EI会议-第四届机器学习、云计算与智能挖掘国际会议
  • leetcode 面试经典 150 题:合并区间
  • vue2使用flv.js在浏览器打开flv格式视频
  • 解锁辅助驾驶新境界:基于昇腾 AI 异构计算架构 CANN 的应用探秘
  • MongoDB的安装、配置和基本操作
  • 09、PT工具用法
  • PHP基础(下)
  • 数学基础 --线性代数之理解矩阵乘法
  • 如何解析返回的快递费用数据?