全網最全程序員效率工具及小技巧

命令行


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 "[email protected]"

-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頁執行

å ç²æ ·å¼
爲各種命令起別名


在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要寫成支持多環境切換的。因爲開發環境和測試環境的域名是不一樣的,但是後面的請求路徑是不變的。

多環境配置

å°ä¸ä¸ªé¡¹ç®çæ¥å£æ¾å¨ä¸ä¸ªCollection中ãCollectionå¯ä»¥å¯¼åºï¼ä½ å¯ä»¥æ©æ©çææµè¯æ¥å£é½åå®ç¶å导åºç»æµè¯å°å§å§ï¼æµè¯å°å§å§ä¼ä¸ä¼ç¹å«æå¨ï¼å³ä¸æ¹å¯ä»¥åæ¢ç¯å¢ï¼ä¸æ¸æ¥çå¯ä»¥çå¦ä¸çæç« ãPostmanè¿æå¾å¤å¶ä»éªæä½ï¼åååã
可以看到我現在配置了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那個按鈕,彈出對話框,粘貼剛纔複製的值即可

å¨è¿éæå¥å¾çæè¿°

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章