加入極市專業CV交流群,與6000+來自騰訊,華為,百度,北大,清華,中科院等名企名校視覺開發者互動交流!更有機會與李開複老師等大牛群内互動!
同時提供每月大咖直播分享、真實項目需求對接、幹貨資訊彙總,行業技術交流。關注 極市平台 公衆号 ,回複 加群,立刻申請入群~
【作者言】想成為一個優秀的AI算法工程師必須要熟練使用Linux,這是學習AI的一個基礎,如果你一直還在用Windows,那就很low了。 本文我們聊聊提升寫代碼效率不得不做的三件事。
1 桌面管理
首先我們說說一個最好用的終端,有着終端終結者之稱的Terminator。
對Linux系統進行管理時,我們經常需要通過終端視窗輸入各種操作指令。在GNOME內建桌面環境下,GNOME終端(gnome-terminal)是我們經常使用的終端程式,每次運作該程式都将打開一個單獨的終端視窗,但是當我們進行指令行操作時,有時需要打開多個終端視窗,并且希望這些視窗能同時平鋪顯示,那該怎麼辦呢?其實,借助一款小巧而實用的軟體——Terminator就可以輕松實作這一功能。效果圖如下:

對于Teminator我們可以使用下面指令來安裝:
sudo apt-get install terminator
我們常用下面的指令來對終端進行各種操作。
Ctrl+Shift+O 水準分割終端(分成上下兩個視窗)
Ctrl+Shift+E 垂直分割終端(分成左右兩個視窗)
Ctrl+Shift+W 關閉目前終端
Ctrl+Shift+X 放大(還原)目前終端
F11 全屏
Ctrl+Shift+G 清屏
Ctrl+Shift+Right/Left 在垂直分割的終端中将分割條向右/左移動
Ctrl+Shift+S 隐藏/顯示滾動條
Ctrl+Shift+Q 關閉所有終端(退出程式)
然後我們說說linux下完美帥氣的終端Guake Terminal。
如果你希望讓終端自己主動啟動并在背景執行,如果你喜歡更高速地隐藏和顯示終端,如果你更習慣使用快捷鍵,那麼Guake 絕對是一個更好的選擇。
對于Guake,我們可以使用下面指令來安裝。
sudo apt-get install guake
我們常用下面的指令來對終端進行各種操作。
F12 顯示/隐藏Guake的程式界面
F11 切換到/退出全屏模式
Ctrl+Shift+T 建立标簽頁
Ctrl+Shift+W 關閉标簽頁
Ctrl+Shift+C 複制
Ctrl+Shift+V 粘貼
Ctrl+PageUp 切換到上一個标簽
Ctrl+PageDown 切換到下一個标簽
對于Guake,想要更好的了解請看其github,下面是連結:
https://github.com/Guake/guake
2 程式設計管理
在這個蔚藍的星球上,對于程式設計來說,流傳着兩大神器:神的編輯器Emacs和編輯器之神Vim。
首先我們說說編輯器之神Vim,Vim是從vi發展出來的一個文本編輯器,其在代碼補全、編譯等友善的功能特别豐富,在程式員中被廣泛使用。
Vim有三種工作模式,分别是指令模式,輸入模式和底線指令模式。
由于Vim的按鍵非常多,這三種模式可以更加高效的幫助我們進行程式設計。
這還隻是Vim的基礎,Vim真正強大和能大幅提高程式設計效率的是其強大的插件。Vim 通過插件可以被拓展出許多不同層次的功能,我們常用的插件有Vundle、YouCompleteMe、Solarized、nerdcommenter等等插件。
然後說說神的編輯器Emacs。下面是其官方網頁和Emacs中文論壇:
官方網頁:
http://www.gnu.org/software/emacs/
中文論壇:
https://emacs-china.org/
Emacs不僅僅是一個編輯器,它實際上是一個內建開發環境,其設計目标就是,你裝了個Unix或者Linux系統,不需要裝任何其它軟體,隻要裝一個Emacs就夠了,它能幫助你完成所有的任務。也就是說,除了程式設計,你還可以用它寫論文、做幻燈片、浏覽網頁、收發郵件、聊天、聽歌、看照片、玩遊戲……目前,好像除了直接在Emacs裡看電影還不行,其它的都實作了。
你使用了Emacs後你就可以不必學習VS去寫C/C++,
不必學習Pycharm去學python,
不必學習eclipse去寫Java,
不必學習MS-Word去寫報告、幻燈片,
不必學習……
3 工程管理
對于工程管理,我們首先說說版本管理工具git。
我們知道,當年Linus建立了開源的Linux,從此,Linux系統不斷發展,現在已經成為最大的伺服器系統軟體了。但是随着Linux的不斷壯大,就需要各種版本控制了,起初Linus帶着他的小弟們使用的是BitKeeper(商業版本控制系統),之後由于某種原因BitKeeper的公司不讓他們使用了,于是Linus自己花了兩周時間寫出了git并且開源了(BitKeeper已哭暈在廁所),之後的歲月裡,漸漸有了github、coding等一些可以使用git存儲的網站,git的江湖地位變得無可替代了,如果你是個開發者卻還不會使用git那就太out了。
在Ubuntu中我們通常使用下面指令來安裝git。
sudo apt install git
git的指令非常多,如果熟練使用恐怕需要記住60-100個指令,但我們日常使用隻需要下面六個指令即可。
然後我們說下linux代碼維護工具make。
make是一種代碼維護工具,其會根據makefile檔案定義的規則和步驟,完成整個軟體項目的代碼維護工作。一般用來簡化編譯工作,可以極大地提高軟體開發的效率。
make工具主要能解決兩大問題:
1、對于一個複雜的工程,一旦你提供了正确的 Makefile,編譯整個工程你所要做的唯一的一件事就是輸入 make 指令,整個工程完全自動編譯,極大提高了效率。
2、它能減少編譯時間,對于一個擁有大量檔案的項目,當你在改動其中一個檔案的時候,可以隻對該檔案進行重新編譯,然後重新連結所有的目标檔案,節省編譯時間。
總結
工欲善其事必先利其器,做好這三件事便使你能在完成一個項目時事倍功半。
*延伸閱讀
- 學深度學習的你有GPU了嗎
- PyTorch Hub釋出!一行代碼調用最潮模型,圖靈獎得主強推
添加極市小助手微信(ID : cv-mart),備注:研究方向-姓名-學校/公司-城市(如:目标檢測-小極-北大-深圳),即可申請加入目标檢測、目标跟蹤、人臉、工業檢測、醫學影像、三維&SLAM、圖像分割等極市技術交流群,更有每月大咖直播分享、真實項目需求對接、幹貨資訊彙總,行業技術交流,一起來讓思想之光照的更遠吧~
△長按添加極市小助手
△長按關注極市平台
覺得有用麻煩給個在看啦~