全网最全程序员效率工具及小技巧

本人花费半年的时间总结的《Java面试指南》已拿腾讯等大厂offer,已开源在github ,欢迎star!

本文GitHub https://github.com/OUYANGSIHAI/JavaInterview 已收录,这是我花了6个月总结的一线大厂Java面试总结,本人已拿大厂offer,欢迎star

原文链接:blog.ouyangsihai.cn >> 全网最全程序员效率工具及小技巧

命令行

CMD秒进指定目录

效率低的操作

win+r,输入cmd,然后跳到指定目录

文件夹地址栏输入cmd,弹出cmd窗口,同时进入指定目录

SSH和SCP命令

ssh:从一台机器登陆到另一台机器scp:将文件从一台机器传输到另一台机器

ssh命令虽然可以通过密码登陆,但还是比较麻烦,建议配置公钥访问。先看自己之前是否已经生成了公钥文件,如果没有需要手动生成

windows:在windows下查看【c盘->用户->自己的用户名->.ssh】下是否有id_rsa,id_rsa.pub文件

mac:在/Users/${自己的用户名}/.ssh文件夹下


ssh-keygen -t rsa -C "youremail@xx.com"

-t 指定密钥类型,默认即 rsa ,可以省略
-C 设置注释文字,比如你的邮箱,可以省略

接着一路回车,如果想设置密码,自己可以设置一下,如果成功的话上述目录已经生成好了,里面包括id_rsa(私钥)、id_rsa.pub(公钥)

win10的PowerShell,Linux,Mac是可以直接使用这2个命令的,但是win7不支持

把公钥追加在Linux服务器上的~/.ssh/authorized_keys的文件中即可通过公钥登陆

ssh命令格式如下,可以不指定端口,默认为22


ssh -p <端口> <用户名>@<IP地址>

如果本地用户名和远程用户名一致,连用户名都可以省略


# 登陆到hadoop1服务器
ssh hadoop@hadoop1
# hadoop用户,从hadoop1服务器登陆到hadoop2服务器
ssh hadoop2

scp命令格式如下,可以不指定端口,默认为22


scp -P <端口> <filename> <用户名>@<IP地址>:<目标目录>

如果你搭过集群,例如hadoop集群你就能发现这2个命令简直是神器,不仅可以在服务器之间快速切换,而且分发环境变量,分发各种配置超级方便。

当然在实际开发中也有很大的用处,如果你想把你的jar包传到测试环境。可以先把代码提交到gitlab,然后让jenkins自动发布,或者手动发布。

但我的习惯是自测完成才提交代码,所有我一般都是自己手动跑脚本将jar包传到服务器上

win脚本

deploy.bat


call mvn clean package -DskipTests=true
cd ./build/libs
scp demo.jar username@ip:/opt/application/
cd ../../
@pause

命令行工具

在win上我用的是Xshell,在mac下用的是SecurtCRT(mac下没有Xshell,真伤)

工具->选项

Xshell在多个窗口执行相同命令

在集群中执行命令很方便勾选查看->撰写->撰写栏

为各种命令起别名

在Linux和Mac下都能使用

有些Linux命令我们是经常用的,但是这些命令有的特别长(如进入层级特别深的项目部署目录),这时就可以为这些命令定义一个别名

系统级别定义的别名

所有的用户都能使用这个别名

例如想直接通过ssh跳转到21这台服务器,先配置别名


echo "alias go21='ssh mosh@21'">>/etc/profile
source /etc/profile

如果你不习惯这种用法,直接打开/etc/profile文件把alias go21=’ssh mosh@21’这一行追加到文件中就行了,此时只要执行go21,别忘了source,你就可以直接跳到21这台服务器上了,你也可以配置一个如下的别名


alias tozo='cd /root/zookeeper-3.4.12/bin'

这样一个tozo命令直接进入/root/zookeeper-3.4.12/bin目录,是不是超快?

用户级别定义的别名

只有当前用户能使用,只是配置的文件不同而已,由/etc/profile改为~/.bash_profile


echo "alias go21='ssh mosh@21'">>~/.bash_profile
source /etc/profile

JSON

浏览器格式化展示JSON

在chrome浏览器中格式化展示json,有各种插件,如JSONView之类的。但我用过感觉最好的就是JSON-Handle,页面美观,浏览器右侧还能编辑,复制等,特别爽。

编辑JSON  格式化JSON

推荐2个我最常用的网站,最明显的特点是功能强大,没有广告

网址:https://jsoneditoronline.org/

写接口文档时,经常要编辑json,我最常用的就是 JSON Editor Online

写起JSON来很方便,而且实时校验格式,当有错误时会在左侧显示叉号。当然你也可以用这个工具格式化JSON,颜值不能太高。

网址:https://codebeautify.org/jsonviewer

各种文件格式转换各种图片格式转换各种文件校验,对比…

Postman

有chrome插件,不过还是建议你下载一个软件,而且很多人只用了postman很少的一部分功能

保存接口导出成文件

postman是有登录功能的,建议一个项目放一个Collection,注明每个接口的作用,这样自测完可以把账号给测试,测试不用再自己重新构造请求参数。或者把你的Collection导出成文件,让其他人导入

多环境配置

测试登陆接口

现在很多企业的用户登陆都是基于cookie和session来做的,测试某些需要登陆的接口时。我之前看到我同事是这么操作的,说真的,当时真的秀到我了

  1. 先登录系统从接口的request head中拿到cookie的值1. 把这个cookie的值粘到postman请求的header中1. 发送请求测试接口
    我发一张图,你大概可以想到测的姿势

在postman中,你只要先请求一下登录接口,在后续请求的接口中会自动带上cookie,不用你每次都粘header。在cookie失效之前你都不用再次点登录接口,一直测就行

绘图

ProcessOn

网址:https://www.processon.com/

国人开发的在线绘图程序,效果图如下

drawio

网址:https://www.draw.io/

外国人开发的在线绘图程序,效果图如下

网址:https://www.xmind.cn

一个常用的思维导图工具

markdown

Typora

颜值最高的markdown编辑器之一,可能刚开始用的人不太习惯,因为是在编辑页面实时显示效果。习惯了就好,很伤的一点是不能保存到云服务器

印象笔记

很知名的一个软件,左边写文,右边预览。可以保存到云服务器,支持多端。markdown,思维导图都支持,不过要用的爽免不了的要充钱

代码

用图片分享代码

网址:https://carbon.now.sh/

这个主要是将代码导出为图片,方便分发到多个平台,省得格式乱图片的边框,字体和样式都可以调(我一般会把边框和样式都去掉,这样代码看着更大)

网址:https://paste.ubuntu.com/

有时候想让别人看代码时,用聊天工具等发过去,格式都会乱,所以我一般都会把代码贴到网页上,方便别人查看

数据结构和算法

牛客网

网址:https://www.nowcoder.com/

上这个网站看面经没有错

LeetCode

网址:https://leetcode-cn.com/

在这个网站上你能发现你面试过程中遇到的各种算法题,而且是原题

其他实用网站

爱课程

地址:https://www.icourse163.org/

上学的时候经常看,很多大学的公开课都有

Stack Overflow

网址:https://stackoverflow.com/

遇到的很多问题解释的都很明白

Redis命令参考

网址:http://redisdoc.com/

Redis的各种命令都解释的超级详细,并配有大量demo

实验楼

网址:https://www.shiyanlou.com/

学习Linux和Git等,用实验楼不能太爽,在线给你提供环境和试题,就是让你练起来

Java知识分享网

网址:http://www.java1234.com/

Linux命令

网址:https://man.linuxde.net/

其他实用工具

漏洞检查

这个在很多企业都用到了,用来管理代码质量,代码中很多不优雅的写法都能检查出来,可以和gitlab集成在一块,强烈建议使用

网站:https://www.sonarqube.org/

API管理工具

API管理工具我用过的有wiki,语雀,Yapi,Swagger

swagger对前端很友好,方便调试,后端也不用写接口文档了,但是对后端代码有一定的侵入性,其实我觉得也还好。

swagger开源版本请求入参是表单形式的话,我看得写swagger的注解(用来写注释)和Spring MVC的注解(用来请求映射),但是我司基础架构组重写了Spring MVC参数解析器,只需要用一个注解,支持注释,请求映射,参数不合法返回json提示,都不用手动校验,超级方便。同时把swagger集成了公司的单点登陆,测试登陆接口也很方便。

Chrome插件

Octotree

以树形结构展示代码,点击直接跳转在所在的目录,这个最好用,因此置顶

Sourcegraph

点击 仓库上的View Repository即可

Isometric Contributions

将如下图形换成柱形图,直观衡量你的工作量

Enhanced Github

展示文件大小,单独下载单个文件,复制文件内容到剪贴板

Awesome Autocomplete for GitHub

实时匹配搜索结果,让搜索快人一步

GitHub Hovercard

以悬浮小框的形式展示作者,仓库,Issues,Pull requests的概述信息

Mac

软件下载

网址:https://xclient.info/

用过Mac的小伙伴基本上都知道这个网站,从Win转过来的小伙伴可以收藏一下,很多实用工具

Git

Git最常用的工具为Git Bash,Git Gui,Sourcetree等,总体用下来还是在Idea中使用Git最爽,只不过需要配置一下

在IDEA中实用Git

Git的很多命令在IDEA中不用命令行也能实现,这里演示一下用图形界面可以提高效率的部分,用的是IDEA 2019,如果有更好的技巧,欢迎留言

上传代码

这里只增加一个.gitignore文件和README.md文件命令行提交


git add .
git commit -m "项目初始化"
git push origin master

IDEA提交点击右上角绿色对勾

要保存哪些文件选中即可(类似于 git add filename)Commit Message框内填写了commit的内容(类似于 git commit -m “项目初始化”)

步骤如下点击File-Settings

可以看到Tool Bar上有了push按钮

在演示一下,修改代码,我修改一下README的说明,点击commit按钮

拉取代码

当我们想拉取远程仓库最新的代码时

命令行拉取


git pull origin master

IDEA拉取

版本回退

git resetgit revert

当然肯定是要用git revert的

右键选中要回退的版本,点击如下按钮

切换分支,tag,commit

切换本地分支和远程分支,直接点就行,想切换tag或者某次commit,点Checkout Tag or那个按钮

原文地址:https://sihai.blog.csdn.net/article/details/109465896

本人花费半年的时间总结的《Java面试指南》已拿腾讯等大厂offer,已开源在github ,欢迎star!

本文GitHub https://github.com/OUYANGSIHAI/JavaInterview 已收录,这是我花了6个月总结的一线大厂Java面试总结,本人已拿大厂offer,欢迎star

原文链接:blog.ouyangsihai.cn >> 全网最全程序员效率工具及小技巧


 上一篇
如何更规范化编写 Java 代码 如何更规范化编写 Java 代码
点击上方 **好好学java **,选择 **星标 **公众号 重磅资讯、干货,第一时间送达 今日推荐:2020年7月程序员工资统计,平均14357元,又跌了,扎心个人原创100W+访问量博客:点击前往,查看更多 作者:涛姐
2021-04-04
下一篇 
回字有四种写法,那你知道单例有五种写法吗 回字有四种写法,那你知道单例有五种写法吗
点击上方 **好好学java **,选择 **星标 **公众号 重磅资讯、干货,第一时间送达 今日推荐:2020年7月程序员工资统计,平均14357元,又跌了,扎心个人原创100W+访问量博客:点击前往,查看更多 转自:Ru
2021-04-04