前端工程師應該知道的Linux知識(一)

2021-09-14 02:50:29 字數 3130 閱讀 5138

隨著業務架構演進,服務端和客戶端的渲染層均交由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 前端工程師首先是個程式設計師,其次也是個軟體工程師,他們工作在離使用者最近的地方,負責人機互動和使用者體驗,雖然叫 前端 但其實他們的工作邊界其實已經很寬了。展望未來,我想...