隨著業務架構演進,服務端和客戶端的渲染層均交由feer處理,越來越多的前端開始接觸linux,做一些安裝部署nodejs專案之類的工作,本篇的主要內容就是介紹linux下的基礎知識和常用命令,幫助前端工程師在伺服器中自由自在的傲遊。目前網際網路公司使用的發行版主要是如下三個
如何知道一台機器的發行版?
lsb_release -a
想知道一台機器的基本資訊(核心版本等)?
uname -a
在linux下,每個使用者都屬於乙個使用者組。檔案和目錄的讀寫許可權等會根據使用者
和使用者組
來區分。對於組外的使用者,稱之為其他使用者
`。
在linux下目錄是一等公民,萬物開始於/
。我們先說明一下系統根目錄下常規的一些資料夾都是做什麼的?詳情見這張表
目錄名簡介
/opt
第三方軟體
/bin
一般使用者可用一些執行檔案
/sbin
一些系統執行檔案
/tmp
臨時檔案
/home
一般使用者的檔案目錄
/root
root使用者的檔案目錄
/boot
核心檔案和開機引導程式等
/dev
裝置檔案
/etc
各種軟體的配置檔案和啟動指令碼
/lib
一些系統依賴的庫
/usr
一些系統軟體所在目錄
/var
一些系統的日誌檔案和快取檔案
上面這張表中/boot目錄以上的是我們一定要理解清楚的目錄,至於/boot及以下的目錄只需大概了解就好。
每個平台下有自己的包管理工具,作為乙個常用mac的前端工程師,你一定知道homebrew,自己也常常brew install
,安完就能在命令列中使用了,非常方便。homebrew預設的源是在海外的,很慢很慢,所以大家一般會替換為國內的源,就跟npm切成**源乙個意思。
為什麼扯這麼多mac上的東西那?原因在於,這套包管理機制和linux各個發行版是一致的。各個發行版中推薦使用的包管理工具如下
通過包管理工具,可以輕鬆安裝相應的包,直接就可以在命令列中使用。
其他還有一些相應格式安裝包對應的安裝工具,比如用於安裝.deb檔案的dpkg
,還有用於安裝.rpm檔案的rpm
。
包的其實也不是什麼高深的東西?其實就是乙個或多個擁有可執行許可權的檔案,比如我們執行node
命令,實際上就是執行了乙個可執行的二進位制檔案。
我們可以使用which
命令檢視可執行檔案在**?例如which node
man絕大部分的軟體安裝都為執行程式提供了幫助手冊
編譯安裝的軟體,可以配置/etc/man.config
指定man手冊路徑
命令簡介
示例cp
複製檔案/目錄
cp path/to/file.ext path/to/copy.ext
cp path/to/file.ext path/to/copy
rm刪除檔案/目錄
rm path/to/file
rm -r path/to/folder
mv移動檔案/目錄
mv source target
which
查詢命了檔案所在位置
which node
find
查詢檔案或目錄
find root_path -name '*.ext'
find root_path -size +500k -size -10mb
ln建立檔案/目錄的鏈結
ln node-v6.2 node
touch
新建空檔案
touch filename
file
檢視檔案型別
file filename
pwd檢視當前工作目錄
pwd
cd切換工作目錄
cd /path
ls顯示目錄內容
ls -lh
mkdir
建立新的目錄
mkdir –p /directory
du統計目錄及檔案的空間占用情況
du -sh
du -h --max-depth=n path/to/folder
tips: 幾個常見的命令列引數
-h -human-readable 以人能看懂的方式展示
-r 遞迴資料夾
-f -force 強制
命令簡介
示例cat
檢視顯示檔案內容
cat filename
more/less
分頁檢視檔案內容
less filename
head/tail
檢視檔案開頭/末尾的部分內容
tail -f web.log
wc統計檔案內容的單詞數量等資訊
grep
檢索過濾檔案內容
`
cat package.json
grep 'vue'`
在檔案檢視命令中,我個人最推薦使用less命令,比較強大,基本可以滿足我個人的所有需求
hi,我叫geoff zhu,是一名前端工程師,我會不定期的在這個部落格中更新一些我寫的東西,希望能對你有所幫助。這是我的github,如果可以給個star什麼的,不勝感激。
前端工程師應該了解的演算法
程式 資料結構 演算法,演算法是真的不重要嗎?單頁應用 mvvm 框架 資料視覺化 地圖 遊戲,都要用到演算法,所以說我們前端工程師只是 身處其中而不自知 而已。第乙份工作是做多級聯動選擇器 終於寫了個純真 ip 庫卻被鄙視 我常來面試別人的題目 eventbus 實現 面掛經驗 lru cache...
未來的前端工程師
作者簡介 aoto 螞蟻金服 資料體驗技術團隊 以下我說的都是個人觀點,比較巨集觀粗淺,主要針對的是前端工程師本身,沒有深入技術和業務細節,請謹慎參考。前端工程師首先是個程式設計師,其次也是個軟體工程師,他們工作在離使用者最近的地方,負責人機互動和使用者體驗,雖然叫 前端 但其實他們的工作邊界其實已...
未來的前端工程師
同步自個人語雀 以下我說的都是個人觀點,比較巨集觀粗淺,主要針對的是前端工程師本身,沒有深入技術和業務細節,請謹慎參考。toc 前端工程師首先是個程式設計師,其次也是個軟體工程師,他們工作在離使用者最近的地方,負責人機互動和使用者體驗,雖然叫 前端 但其實他們的工作邊界其實已經很寬了。展望未來,我想...