命令行
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地址>:<目标目录>
1
如果你搭过集群,例如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
mac脚本
命令行工具
在win上我用的是Xshell,在mac下用的是SecurtCRT(mac下没有Xshell,真伤)
SecurtCRT有个超级好用的功能,选中即复制,右键即粘贴,再用不用Ctrl+C和Ctrl+V了。Xshell虽然也支持这个功能,但还需要设置一波
工具->选项
设置右键为粘贴内容,勾选将选定的文本自动复制到剪贴板
此时,选中即复制,右键即粘贴,超级方便
Xshell在多个窗口执行相同命令
在集群中执行命令很方便
勾选查看->撰写->撰写栏
在下方的撰写栏中,选中全部会话,在撰写栏中执行的命令就会在当前打开的所有Tab页执行
![å ç²æ ·å¼](https://i-blog.csdnimg.cn/blog_migrate/5762017b3c845bab6925fcd169ba93f0.png)
为各种命令起别名
在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导出成文件,让其他人导入
另外请求的url要写成支持多环境切换的。因为开发环境和测试环境的域名是不一样的,但是后面的请求路径是不变的。
多环境配置
可以看到我现在配置了3个环境,切换环境点击下拉框选中即可,点击后面的配置按钮即可配置环境
base_url在前面请求路径中用过了,相当于一个key,而这个配置相当于一个map
测试登陆接口
现在很多企业的用户登陆都是基于cookie和session来做的,测试某些需要登陆的接口时。我之前看到我同事是这么操作的,说真的,当时真的秀到我了
先登录系统从接口的request head中拿到cookie的值
把这个cookie的值粘到postman请求的header中
发送请求测试接口
我发一张图,你大概可以想到测的姿势
骚操作
在postman中,你只要先请求一下登录接口,在后续请求的接口中会自动带上cookie,不用你每次都粘header。在cookie失效之前你都不用再次点登录接口,一直测就行
一个网站只要设置了cookie,后续请求都会自动带上设置的cookie,浏览器如此,postman也是,不用手动自己粘
绘图
ProcessOn
网址:https://www.processon.com/
国人开发的在线绘图程序,效果图如下
drawio
网址:https://www.draw.io/
外国人开发的在线绘图程序,效果图如下
Xmind
网址: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/
很多书籍的pdf都可以下载
Linux命令
网址:https://man.linuxde.net/
其他实用工具
漏洞检查
这个在很多企业都用到了,用来管理代码质量,代码中很多不优雅的写法都能检查出来
网站:https://www.sonarqube.org/
Chrome插件
Octotree
以树形结构展示代码,点击直接跳转在所在的目录,这个最好用,因此置顶
Sourcegraph
点击 仓库上的View Repository即可
层级显示,查看引用,查看定义,自动跳转,IDE上的常用操作基本上都有
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 “项目初始化”)
在项目中任意地方右键->git->Repository->Push,可以发现push的快捷键是Ctrl+Shift+K
,这个快捷键会和输入法冲突,所以我一般会把push命令设置成tool bar,用起来超级方便
步骤如下
点击File-Settings
找到如图所示位置,点击Add Action
弹出对话框,点击图中所示位置
点击图中所示位置
各个按钮的顺序可以调整,点击上面的上下按钮即可,我这里把push按钮放在commit后面
可以看到Tool Bar上有了push按钮
点击push按钮即可,可以修改remote和branch
点击push即可
在演示一下,修改代码,我修改一下README的说明,点击commit按钮
idea在下方对比显示,并将修改的内容用另一个种背景颜色显示,非常方便看到我们修改了哪些内容
拉取代码
当我们想拉取远程仓库最新的代码时
命令行拉取
git pull origin master
IDEA拉取
点击pull按钮
默认选项,点击OK即可,可以选中不再显示这个对话框
版本回退
点击钟表的那个按钮,下方会显示所有的提交记录,版本回退有如下2种方式,用revert
https://blog.csdn.net/zzti_erlie/article/details/87189530
右键选中要回退的版本,点击如下按钮
弹出对话框
点击commit,连commit message都不用你写了,接着点击push按钮即可
切换分支,tag,commit
切换本地分支和远程分支,直接点就行,想切换tag或者某次commit,点Checkout Tag or那个按钮
演示一下切换到某次commit,先copy版本值
点Checkout Tag or那个按钮,弹出对话框,粘贴刚才复制的值即可