工作环境配置
文章目录
一般,在使用一个新的环境时,不管是新电脑还是新服务器,第一件事情都是配置环境。好用的环境,能让工作效率翻倍,方便而且舒心。
配置环境首先从终端命令行开始,但如果你使用的是 Windows
,那就当我没说 …
Linux 终端配置
免密登录
这一步也不是必须的,对于那些喜欢使用第三方软件来登录服务器的人来说,软件可以记住密码,并不用每次都输
对于像我这种喜欢直接用 shh
登录服务器的人来说,配置免密登录时必不可少的
ssh 环境配置
这一步用于设置服务器别名,ssh
登录老是要写用户名和服务器地址,太麻烦了,可以在用户目录下的 ~/.ssh
文件夹中创建一个 config
文件
cat ~/.ssh/config
然后进行配置,根据自己的服务器配置,如果需要身份验证信息的,在 IdentityFile
字段后面添加验证文件即可。
Host alias_name
HostName Server_IP
User username
Port 22
IdentityFile ~/.ssh/xx_id_rsa # 身份验证文件
创建本地私秘钥
如果本地已经有公钥,可以跳过这一步
ssh-keygen
会生成两个文件
id_rsa (私钥)
id_rsa.pub (公钥)
上传公钥到服务器
ssh-copy-id -i ~/.ssh/id_rsa.pub alias_name
这行命令会将公钥中的内容写入到服务器的 ~/.ssh/authorized_keys
中,也可以直接将内容拷贝进去
登录测试
在本地终端运行下面代码
ssh alias_name
即可登录服务器
Windows
用户的~
一般是在C:\Users
下的用户名文件夹中,可以使用文件资源管理器中输入%homepath%
访问到
zsh
Zsh
(Z shell
)是一个强大的命令行解释器,用于 UNIX
操作系统。它既是一个交互式命令行接口,也是一种脚本语言。Zsh
作为 Bash
、sh
和其他 Bourne shell
的替代品,提供了许多改进,包括更强的脚本能力、用户界面改进和扩展的功能。
主要特性
-
命令行编辑:
Zsh
提供高级的命令行编辑功能,如自动补全命令、文件名、变量名和用户名。这不仅限于简单的文本,还包括复杂的命令行结构。 -
增强的通配符:
Zsh
支持多种通配符和匹配模式,如递归文件搜索(使用**
)、正则表达式匹配等,这让文件操作更为方便灵活。 -
模块化配置:
用户可以根据自己的需要加载或卸载功能模块,使得Zsh
可以在功能丰富与轻量之间灵活切换。 -
主题和插件:
Zsh
允许用户高度定制提示符的外观,包括颜色、内容和布局,并且支持使用插件来扩展其功能。如Oh My Zsh
提供了很多主题和插件。
安装 zsh
如果有 root
权限,直接安装到系统中
- Ubuntu
sudo apt-get install zsh
- Redhat
sudo yum install zsh
- MacOS
brew install zsh
如果是
MacOS
系统的话,推荐使用iTerm2
作为默认的终端软件
没有权限也没关系,先用 conda
安装一下
conda install -c conda-forge zsh
安装成功之后,查看安装位置
which zsh
# /bin/zsh
如果是 conda
安装需要注意一下所安装的环境是否添加到了环境变量中
列出系统中可用的 shell
cat /etc/shells
# /etc/shells: valid login shells
/bin/sh
/bin/bash
/bin/rbash
/bin/dash
/bin/zsh
将 zsh
设置为系统默认 shell
,这一步可以不用 root
权限,仅更改自己的 shell
chsh -s $(which zsh)
新建一个终端,会出现 zsh
配置提示,可以直接按 q
退出,查看现在的终端
echo $SHELL
这一步对非 root
用户应该不会生效,但是不要灰心,还有一个方法,就是在 ~/.bashrc
配置文件中加入一条命令
# run zsh shell
zsh
今后所有的配置也写入到 ~/.zshrc
中
安装 oh-my-zsh
安装了 zsh
还不够,还需要搭配 Oh My Zsh
,它是基于 zsh
命令行的一个扩展工具集,提供了丰富的扩展功能,包括多种主题和插件,以及配置好的内置的便捷操作。
这一步需要用到 git
,确保系统中已经安装好了
然后可以使用 curl
安装
sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
这一步经常会失败,可以使用国内镜像
sh -c "$(curl -fsSL https://gitee.com/mirrors/oh-my-zsh/raw/master/tools/install.sh)"
或者 wget
安装
sh -c "$(wget https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh -O -)"
Gitee
镜像
sh -c "$(wget -O- https://gitee.com/pocmon/mirrors/raw/master/tools/install.sh)"
配置插件
oh-my-zsh
已经内置了很多插件,比如 z
是一个文件夹快捷跳转插件,对于曾经跳转过的目录,只需要输入最终目标文件夹名称,就可以快速跳转,避免再输入长串路径,提高切换文件夹的效率。
查看所有内置的插件
ls ~/.oh-my-zsh/plugins
除了这些,还有几个好用的插件,可以安装一下
zsh-autosuggestions
这是一个命令提示插件,会自动推测你可能需要输入的命令,按下右键可以快速采用建议
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
zsh-syntax-highlighting
这是一个命令语法校验插件,在输入命令的过程中,若指令不合法,则指令显示为红色,若指令合法就会显示为绿色
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
修改配置
最后一步,启用插件以及主题选用,修改 .zshrc
配置文件
vi ~/.zshrc
在主题这里,可以设置单个主题名字,也可以定义可以随机切换的主题列表,我一般选择在所有主题中随机切换
ZSH_THEME="random"
# ZSH_THEME="robbyrussell"
# Set list of themes to pick from when loading at random
# Setting this variable when ZSH_THEME=random will cause zsh to load
# a theme from this variable instead of looking in $ZSH/themes/
# If set to an empty array, this variable will have no effect.
# ZSH_THEME_RANDOM_CANDIDATES=( "robbyrussell" "agnoster" )
安装的插件默认并不会启用,需要在插件列表中设置
plugins=(
git
zsh-autosuggestions
zsh-syntax-highlighting
z
)
保存并退出后,重新加载配置文件或重新打开终端即可看到最终的效果