這是我個(gè)人使用Linux的三篇筆記中的第二篇:
- 第一篇 : 記錄一般生活軟件的安裝,比如輸入法,微信翰舌,Tim等,這一步解決在Linux 下的生存問題冬骚。
- 第二篇 : 基本命令行的使用椅贱,利用好Linux 的優(yōu)勢(shì)。
- 第三篇: vim配置只冻,實(shí)現(xiàn)高效的寫代碼庇麦。
下面的內(nèi)容僅僅為自己的看法
不要迷信命令行
為什么需要命令行:
- 遠(yuǎn)程登錄(這不是一個(gè)絕對(duì)的原因,但是圖形界面的傳輸速度相對(duì)來說太慢了)喜德。
- 該程序沒有圖形界面版本女器。
為什么不需要命令行:
- 命令行難以記憶。
我為什么使用命令行:
- 經(jīng)常使用命令數(shù)量是有限的住诸,可以 alias 這些命令,讓命令的使用高效簡(jiǎn)潔涣澡。
- 過多的窗口讓人讓人手忙腳亂贱呐,在終端中間執(zhí)行程序顯得更加整潔。
shell學(xué)習(xí)
- https://devhints.io/bash : 語法清單
- https://explainshell.com/ : 解釋腳本
- https://linuxjourney.com/ : 免費(fèi)教程
shell 和 gnu make, cmake 等各種工具類似入桂,一學(xué)就會(huì)奄薇,學(xué)玩就忘。究其原因抗愁,是因?yàn)槭褂妙l率太低了馁蒂。 如果你每天都要用呵晚,我建議,系統(tǒng)學(xué)習(xí)沫屡,如果只是偶爾學(xué)習(xí)饵隙,對(duì)于shell只需要存在一個(gè)大致的了解,就是知道shell能做什么沮脖,適合做什么金矛,具體的知識(shí)點(diǎn)等到遇到的時(shí)候再到Google上查詢。
選擇一個(gè)好用的終端
一個(gè)好用的終端至少應(yīng)該具有一下特性:
- 多tab
- 多窗口
- 半透明
- 性能
Deepin
下面是一些有名的終端勺届,我個(gè)人比較喜歡使用其中的 Deepin Terminal驶俊。
選擇好用的shell
zsh 和 bash 之前語法上基本是兼容的,但是由于oh my zsh免姿,我強(qiáng)烈推薦使用zsh
常用工具的替代
使用Linux有個(gè)非常窒息的事情在于饼酿,默認(rèn)的工具使用體驗(yàn)一般,下面介紹一些體驗(yàn)更加的工具胚膊。
這里 總結(jié)的工具非常不錯(cuò)故俐,下面是我自己的補(bǔ)充:
這些工具都是基本是從github awesome 和 hacker news 中間找到:
- https://github.com/agarrharr/awesome-cli-apps
- https://github.com/alebcay/awesome-shell
- https://github.com/unixorn/awesome-zsh-plugins
- https://news.ycombinator.com/
1 cd -> autojump
使用命令行,如果沒有 autojump 澜掩,我認(rèn)為幾乎是沒有辦法生存的购披。
autojump 沒有學(xué)習(xí)曲線,只需要 j + 目標(biāo)文件名的字符
autojump
2 ls -> lsd
效果對(duì)比如下:
默認(rèn) ls
lsd
DeepinScreenshot_select-area_20200328114320.png
3 du -> ncdu
du 的效果:
? .SpaceVim.d git:(master) ? /usr/bin/du
28 ./UltiSnips
32 ./doc
12 ./spell
12 ./install
16 ./plugin
36 ./.git/objects/52
44 ./.git/objects/9f
24 ./.git/objects/ed
188 ./.git/objects/77
60 ./.git/objects/14
36 ./.git/objects/6a
48 ./.git/objects/f6
40 ./.git/objects/80
// ... 省略
ncdu 的效果:
ncdu 1.14.2 ~ Use the arrow keys to navigate, press ? for help
--- /home/shen/.SpaceVim.d ------------------------------------------------------------------------------------------------------------------
9.9 MiB [##########] /.git
60.0 KiB [ ] antigen.zsh
32.0 KiB [ ] /doc
28.0 KiB [ ] /UltiSnips
16.0 KiB [ ] /plugin
12.0 KiB [ ] /install
12.0 KiB [ ] /autoload
12.0 KiB [ ] /spell
8.0 KiB [ ] init.toml
8.0 KiB [ ] zshrc
4.0 KiB [ ] Readme.md
4.0 KiB [ ] gitconfig
4.0 KiB [ ] .netrwhist
4.0 KiB [ ] .profile
4.0 KiB [ ] .yaourtrc
4.0 KiB [ ] .gitignore
4 gdb 封裝
5 git 封裝
6 易于理解的 man
- cheat : 對(duì)于新手而言肩榕,man 是非常的不友好的刚陡,其中的內(nèi)容大而全,看完之后只會(huì)讓人更加的疑惑株汉。當(dāng)不知道如何使用軟硬鏈接的時(shí)候筐乳,就可以求助于cheat。由于man的輸出太長了乔妈,我就不放了蝙云。
? shen git:(master) ? cheat ln
# To create a symlink:
ln -s path/to/the/target/directory name-of-symlink
# Symlink, while overwriting existing destination files
ln -sf /some/dir/exec /usr/bin/exec