Ubuntu终端配置

选择shell

shell有很多,默认的是bash,一般就够用里,想要花里胡哨点就用zsh,还有最近比较火的fish

如果在刚开始安装完Ubuntu没有改shell,后面就不要改了。

安装的软件会设置环境变量,这些环境变量都是写入sehll的配置文件的,不同shell的配置文件也不同,会导致改完shell后可能识别不到原来安装的软件里,其实默认的bash也完全够用。

如果非要改,可以在新shell的配置文件里添加一句,source一下老shell的配置文件,这样可以继承之前的环境变量。

例如在.zshrc中添加一句source ~/.bashrc

主题 & 插件

如果选择了zsh,最好安装一下oh-my-zsh,后续安装主题插件之类的都方便.

如果装了oh-my-zsh,插件和主题都会放在~/.oh-my-zsh文件夹下,custom中放的是自己后加的主题和插件

插件不要太多,其实常用的就那么几个,装太多,又卡又没用。

主要就是:窗口美化,指令提示,复杂指令简化这么几个功能

git类插件看个人需求,我更倾向于用vscode里面自带的git管理功能。另外之前在WSL2中装了git插件感觉会有点卡,当然,可能是电脑问题。

美化就仁者见仁智者见智了,网上一大堆,没用细说的必要。

主题推荐powerlevel10k,自行百度教程。

效果图,更花里胡哨的也没用意义,简单好用就行。

配置终端窗口

对终端窗口就俩要求:

  • 方便分窗口,新建终端
  • 配色,背景,透明度可以调节

Ubuntu下可以使用terminator终端窗口,安装方便

直接sudo apt install terminator就可以了。

另外还可以尝试一下tmux,这个不是一个图形化的终端,类似于一个终端插件,安装方式也是sudo apt,tmux只能方便进行分窗口新建终端,没办法调节终端的透明度之类的外观因素。

配置代理

学校内网代理软件一般都不会自动给终端加代理,想要给终端代理,需要自己设置,终端里有几个内置的环境变量https_proxy,http_proxy,ALL_PROXY,默认为空,将他们设置为代理地址就可以了,建议将代理设置成一个脚本函数,可以自己控制是否开启代理

bash 复制代码
function proxy_on(){
	export ALL_PROXY=socks5://127.0.0.1:7897
    	export http_proxy=http://127.0.0.1:7897
    	export https_proxy=http://127.0.0.1:7897
    	echo -e "已开启代理"
}

function proxy_off(){
    unset ALL_PROXY
    unset http_proxy
    unset https_proxy
    echo -e "已关闭代理"
}

可以直接放在shell的配置文件里,也可以新建一个脚本文件,然后在对应的shell配置文件中进行source。

使用方法就是指令

bash 复制代码
proxy_on # 代理开
proxy_off # 代理关

配置vim

推荐使用neovim,有很多好用的插件。

如果使用vim,vim的全局配置文件在/etc/vim/vimrc或者/etc/vim,用户配置在~/.vimrc

我个人配置就一句:

bash 复制代码
set number # 开启行数显示
syntax on # 开启语法高亮

也可以用网上的很多大佬配置好的配置文件,但是那些都太复杂了,我们这些小喽啰就别逞强了,复杂项目还是用vscode方便。

换源

现在应该用不到换源了,至少在Ubuntu24.04中不需要了,安装的时候位置选择国内地址,会直接默认使用清华源。

相关推荐
知已难寻6 小时前
Docker 入门:容器技术与 Docker 基础
java·运维·服务器·docker·云原生·容器
默|笙6 小时前
【Linux网络】网络层协议 IP(1)理解报头、网段划分
linux·网络·tcp/ip
修己xj9 小时前
nslookup 使用指南:两种模式与常用查询技巧
linux
唠玖馆11 小时前
文件系统详解
linux·文件系统·ext2
GeW11 小时前
当Linux内核开始“确定性”,制造高端化才有了底层语法
linux
星恒随风12 小时前
MySQL 从零入门(三):表的约束详解
linux·服务器·数据库·笔记·mysql
Alluxio13 小时前
Alluxio + OCI:为 AI 工作负载实现亚毫秒访问延迟与可扩展吞吐
运维·数据库·人工智能·分布式·缓存·ai·语言模型
StarsGreen14 小时前
libva在intel平台上的前端流程简介
linux
坤坤子吖17 小时前
Linux网络编程:自定义应用层协议与 JSON 序列化
linux·服务器·网络·c++·笔记·json
Sayai17 小时前
Neo4j 图数据质量检查实战:环路检测、孤立节点与连通分量,两条 Cypher 引出的数据体检清单(含变长路径性能陷阱)
运维·neo4j·图数据库·数据质量·cypher