小书匠Linux

目录:

注:如有更好的提升效率的方法,会继续更新这个文章。


1.zsh安装与配置

1.1 安装

1.1.1 检查当前的终端类型

  1. echo $SHELL 

一般情况下,系统会默认安装bash,所以会得到以下输出:


检查终端类型

1.1.2 安装zsh

(1)安装zsh到系统

  1. sudo apt-get install zsh 

(2)设置zsh为默认的终端

  1. chsh -s $(which zsh) 

(3)检查设置是否成功

首先是注销系统,重新登录,然后在终端使用echo $SHELL检查当前使用终端,如果输出是包含zsh文字,表示安装成功。


检查终端设置是否成功

1.2 美化zsh

从上面的图看出,未美化前的zsh输出没有任何颜色区分,这样的zsh不是提高我们效率的zsh.

这时候就需要Oh My Zsh这个框架来管理zsh的配置。

安装Oh My Zsh可以使用以下两种方法:

  1. sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)" 

  1. sh -c "$(wget https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh -O -)" 

安装完成后,可以通过编辑~/.zshrc的这个文件来对zsh来进行配置(插件,主题等)。下面是通过配置这个文件来提高工作效率的过程,主题和插件我就使用默认的,没有深入折腾。

1.3 配置zsh

1.3.1 别名设置

别名,即是通过将一个长命令映射到更短的特殊字符,终端输入该特殊字符相当于输入特殊字符。

解压相关

  1. alias -s gz='tar -xzvf'  

  2. alias -s tgz='tar -xzvf'  

  3. alias -s zip='unzip'  

  4. alias -s bz2='tar -xjvf'  

文档编辑相关

  1. alias -s php=vim 

  2. alias -s py=vim  

  3. alias -s rb=vim  

  4. alias -s html=vim 

注:需提前安装vim

远程登录服务器与端口映射

  1. alias labser='ssh tom@172.xxx.xxx.xxx' 

  2. alias sshl8888='ssh tom@172.xxx.xxx.xxx -L 8888:localhost:8888' 

  3. alias sshl8889='ssh tom@172.xxx.xxx.xxx -L 8889:localhost:8889' 

  4. alias sshl8890='ssh tom@172.xxx.xxx.xxx -L 8890:localhost:8890' 

通配符设置

使用zsh后,有些时候无法使用通配符,需要在配置文件中加入下面一行。

  1. setopt nonomatch 

把以上配置信息拷贝到~/.zshrc文件末尾,然后使用source ~/.zshrc使之生效。


2.自动登录服务器

每次远程登录服务器,需要手动敲命令和输入密码,如如果要连接多个窗口或者远程拷贝文件,效率就非常低下了。这里使用zsh的别名,配合使用xxxx,达到一个很短的命令登录到服务器内。

ssh服务有两种验证用户登录的方式,一种是基于密码口令的认证,一种是基于密钥的认证。一般的手动登录属于密码口令登录,


密码口令登录服务器

下面是ssh基于密钥认证过程图示


ssh免密登录

下面是生成和分配密钥对的过程:

生成密钥

  1. ssh-keygen -t rsa 

复制公钥到服务器

  1. ssh-copy-id -i ~/.ssh/id_rsa.pub tom@172.xxx.xxx.xxx 

结合上面的别名,比如可以直接输入labser就登录到服务器来,快的中间不到1s的功夫,大大提高工作效率;拷贝文件时,没有做别名设置仍然需要输入原命令,但是可以免密拷贝。


3.快捷键配置

Linuxmint设置里面的键盘项,有一栏快捷键,里面可以设置自定义快捷键。

截图快捷键

我使用Shutter进行截图,每次需要截图,使用快捷键,调出Shutter的选区截图(命令是shutter -s),所以我的设置如图。


自定义快捷键

锁屏

平常喜欢使用super+L进行锁屏,所以这样设置快捷键。


锁屏快捷键

终端新开一个tab

打开终端后,喜欢使用super+T在同一终端下新开一个页面。


终端新开一个tab

lixuxmint系统定制与配置(5)-效率配置的更多相关文章

  1. lixuxmint系统定制与配置(1)-系统初始配置

    小书匠Linux 经常安装新的系统,每次安装完都得去搜索一边如何将系统部署为之前的环境,不仅耗费时间,还不一定能弄回之前的环境,现在把从裸机->到工作环境的系统定制及配置过程记录下来,期间的配置 ...

  2. lixuxmint系统定制与配置(3)-字体

    小书匠Linux 有些系统自带的字体实在太难看了,看起来不清晰,不明确,有一个好的字体,可以带来好心情,并提高工作与效率. 1.常用中文字体 文泉驿微黑,微软雅黑,思源黑体 2.字体安装 2.1检查已 ...

  3. lixuxmint系统定制与配置(4)-应用安装

    小书匠Linux 先简单列一下,其实每个软件都有自己的个性化配置,以后有时间了,逐个记录下来.编程主力环境是Python,编辑器使用Jupyter,这个编辑器是在远程服务器启动,映射端口到本地来编辑. ...

  4. lixuxmint系统定制与配置(2)-输入法

    小书匠Linux RIME的官网在这里 1.安装 刚开始是使用ibus-rime,后来使用过程感觉不舒服,就换回fcitx-rime.使用以下命令安装fcitx-rime sudo apt insta ...

  5. .NET Core采用的全新配置系统[3]: “Options模式”下的配置是如何绑定为Options对象

    配置的原子结构就是单纯的键值对,并且键和值都是字符串,但是在真正的项目开发中我们一般不会单纯地以键值对的形式来使用配置.值得推荐的做法就是采用<.NET Core采用的全新配置系统[1]: 读取 ...

  6. 搭建CnetOS6.5x64最小系统及在线yum源的配置

    CentOS系统作为红帽系列的一款linux系统,因为其免费.开源,在中小企业中得到了广泛应用,生产上为了更好的利用资源,都采用最小系统安装,因为一个图形界面都会占去系统资源的30%到40%,生产上一 ...

  7. CentOS系统下Redis安装和自启动配置的步骤

    相信大家都知道Redis是一个C实现的基于内存.可持久化的键值对数据库,在分布式服务中常作为缓存服务.所以这篇文章将详细介绍在CentOS系统下如何从零开始安装到配置启动服务.有需要的可以参考借鉴. ...

  8. 在Linux(Centos7)系统上对进行Hadoop分布式配置以及运行Hadoop伪分布式实例

    在Linux(Centos7)系统上对进行Hadoop分布式配置以及运行Hadoop伪分布式实例                                                     ...

  9. centos LB负载均衡集群 三种模式区别 LVS/NAT 配置 LVS/DR 配置 LVS/DR + keepalived配置 nginx ip_hash 实现长连接 LVS是四层LB 注意down掉网卡的方法 nginx效率没有LVS高 ipvsadm命令集 测试LVS方法 第三十三节课

    centos   LB负载均衡集群 三种模式区别 LVS/NAT 配置  LVS/DR 配置  LVS/DR + keepalived配置  nginx ip_hash 实现长连接  LVS是四层LB ...

随机推荐

  1. 二进制方式安装Kubernetes 1.14.2高可用详细步骤

    00.组件版本和配置策略 组件版本 Kubernetes 1.14.2 Docker 18.09.6-ce Etcd 3.3.13 Flanneld 0.11.0 插件: Coredns Dashbo ...

  2. mpvue + vant + flyio 小程序项目总结

    vant 的使用 我开始是 npm 导入,然后 import,使用不了. 找了各种方法,最后还是下载文件,然后找到 dist 文件夹,复制到项目里,我是放在 static 文件夹,文件名 dist 重 ...

  3. 作业调度框架Quartz.NET-现学现用-02-任务监听

    原文:作业调度框架Quartz.NET-现学现用-02-任务监听 前言 任务调度系统并不是完美的,它会出现任务执行失败的情况.如果你需要处理任务失败后的逻辑,希望这篇笔记可以为你提供些帮助. Quar ...

  4. sql 作业创建

    转载:https://jingyan.baidu.com/article/adc81513be3423f722bf7351.html

  5. vue 关于子组件向父组件传值$emit触发无效问题

    先贴上代码 子组件代码 //子组件请求接口,用自己封装的axios getupdate(){ this.$post({ url:this.$apis.unitupdate, postType:'jso ...

  6. JS中的迭代器和生成器

    利用迭代器生成一个遍历方法: let arr1 = [1, 2, 3, 11, 22, 13, 24]; function forOf(arr, callback) { // 找到迭代器函数 let ...

  7. 关于阿里 iconfont 的使用步骤

    第一步: 在iconfont库中,找到你想要的图标,加入到购物车,再在购物车中将图标加入到你的项目中去    第二步: 在项目中,可以看到刚刚加入的图标,这里是你在项目中所有用到的iconfont,选 ...

  8. MySql时区修改

    1.查看当前时间 > select curtime(); #或select now()也可以+-----------+| curtime() |+-----------+| 15:18:10 | ...

  9. 2013.4.29 - KDD第十一天

    今天上午在图书馆写FIrst集,真心没写出来,算法是昨天找好的,不过实现的话还是需要很大的代码量,然后就打算用郑茂或者韩冰的代码了. 晚上图书馆快关门的时候开始思考KDD的问题, 我一开始打算给中秋发 ...

  10. 本地安装部署ActiveCollab

    ActiveCollab是一个非常易于使用.基于Web.开源的协作开发与项目管理工具. 我们公司一直在用这款工具,进行任务分配和时间填写,十分简便 ActiveCollab可以利用它轻松地搭建一个包括 ...