每一個命令都有很詳細甚至繁瑣的參數,此文只演示簡單的使用示例。具體參數以及使用方式能夠參照如下四種方式檢索:linux
man ${YOUR_COMMAND}
ping是一種計算機網絡工具,用來測試數據包可否透過IP協議到達特定主機。ping的運做原理是向目標主機傳出一個ICMP的請求回顯數據包,並等待接收回顯迴應數據包。程序會按時間和成功響應的次數估算丟失數據包率(丟包率)和數據包往返時間(網絡時延,Round-trip delay time)。正則表達式
ping www.baidu.com
複製代碼
備註:這個命令經常使用於檢測域名對應服務器是否在啓動狀態中。(詳細使用參數man ping
,適用於如下全部命令)。shell
traceroute是一種計算機網絡工具。它可顯示數據包在IP網絡通過的路由器的IP地址。express
traceroute www.baidu.com
複製代碼
若是系統中不存在此命令,按如下方式安裝:json
sudo apt install inetutils-traceroute
sudo apt install traceroute
複製代碼
備註:若是某個網站掛了,能夠用這個命令檢測是哪一個環節出了問題。vim
nslookup能夠指定查詢的類型,能夠查到DNS記錄的生存時間還能夠指定使用哪一個DNS服務器進行解釋。 在已安裝TCP/IP協議的電腦上面都可以使用這個命令。 主要用來診斷域名系統 (DNS) 基礎結構的信息。安全
nslookup www.baidu.com
複製代碼
cURL是一個利用URL語法在命令行下工做的文件傳輸工具。bash
請求www.baidu.com的網頁內容服務器
curl www.baidu.com
複製代碼
在輸出裏帶上Http Header(-i --include)微信
curl -i www.baidu.com
複製代碼
nmap(「Network Mapper(網絡映射器)」) 是一個網絡探測和安全掃描程序,系統管理者和我的可使用這個軟件掃描大型的網絡,獲取那臺主機正在運行以及提供什麼服務等信息。nmap支持不少掃描技術,例如:UDP、TCP connect()、TCP SYN(半開掃描)、ftp代理(bounce攻擊)、反向標誌、ICMP、FIN、ACK掃描、聖誕樹(Xmas Tree)、SYN掃描和null掃描。
nmap www.baidu.com
複製代碼
備註:通常用來檢測該服務器開放的端口。好比以上命令的輸出內容以下,可知開放了80、443端口。
Starting Nmap 7.70 ( https://nmap.org ) at 2019-05-04 16:52 CST
Nmap scan report for www.baidu.com (14.215.177.38)
Host is up (0.0095s latency).
Other addresses for www.baidu.com (not scanned): 14.215.177.39
Not shown: 998 filtered ports
PORT STATE SERVICE
80/tcp open http
443/tcp open https
Nmap done: 1 IP address (1 host up) scanned in 4.67 seconds
複製代碼
UFW 全稱爲Uncomplicated Firewall,是Ubuntu 系統上默認的防火牆組件, 爲了輕量化配置iptables 而開發的一款工具。 UFW 提供一個很是友好的界面用於建立基於IPV4,IPV6的防火牆規則。
示例好比開啓服務器的443(https)端口:
sudo ufw allow 443
sudo ufw enable
sudo ufw status
複製代碼
Secure Shell(安全外殼協議,簡稱SSH)是一種加密的網絡傳輸協議,可在不安全的網絡中爲網絡服務提供安全的傳輸環境。 SSH經過在網絡中創建安全隧道來實現SSH客戶端與服務器之間的鏈接。
好比建立一個SSH key:
cd ~/.ssh/
ssh-keygen -t rsa
複製代碼
將生成的公鑰放置遠程服務器中,而後便可以使用私鑰登陸遠程服務器:
ssh -i ~/.ssh/my_key root@$YOU_SERVER_IP
複製代碼
find是一個用於在文件系統中尋找文件的Unix命令行工具。它的用法包括文件名模式匹配,時間戳匹配。
經常使用的幾個選項爲:
通用格式以下:
find $YOU_DIRECTORY/ -name $YOU_FILES
複製代碼
示例。好比想在express文件夾中尋找名稱含有Guide
的md文件
find express/ -name *Guide*.md
複製代碼
grep是一個最初用於Unix操做系統的命令行工具。在給出文件列表或標準輸入後,grep會對匹配一個或多個正則表達式的文本進行搜索,並只輸出匹配(或者不匹配)的行或文本。
示例在package.json裏搜索做者的名稱:
grep -w "author" express//package.json
複製代碼
author
單詞的一整行
"author": "TJ Holowaychuk <tj@vision-media.ca>",
複製代碼
備註:這個命令也至關實用~能夠查閱文檔多多練習!
經常使用命令之一,顯示當前文件夾的內容
ls
複製代碼
比較經常使用的是這個組合
ls -laG
複製代碼
cd命令用來切換工做目錄至dirname。 其中dirName表示法可爲絕對路徑或相對路徑。若目錄名稱省略,則變換至使用者的home directory。
cd $PATH
複製代碼
在類Unix系統和其餘一些操做系統中,pwd(英語:print working directory)用於輸出當前工做目錄的絕對路徑
pwd
複製代碼
新建文件夾
mkdir $FOLDER
複製代碼
刪除文件夾
rmdir $FOLDER
複製代碼
固然刪除文件夾也可使用如下命令遞歸刪除文件(這個命令須要當心使用)
rm -rf $FOLDER
複製代碼
touch命令有兩個功能:一是用於把已存在文件的時間標籤更新爲系統當前的時間(默認方式),它們的數據將原封不動地保留下來;二是用來建立新的空文件。
因此通常能夠用來新建文件,顯得十分方便
touch $FILE
複製代碼
刪除文件
rm $FILE
複製代碼
cat是unix系統下用來查看文件連續內容用的指令,字面上的含意是「concatenate」(連續)的縮寫。除了用來做爲顯示文件內容外,cat指令也可用於標準流上的處理,如將顯示的消息轉入或附加另外一文件上。
cat $YOUR_FILE
複製代碼
結合標準輸出流>
能夠有如下姿式:
cat $FILE1 > $FILE2
複製代碼
關於head/tail/more/less這些命令工做效果大體類似,可是具體不一樣之處可使用以上提供的方式查閱
vi是一種模式編輯器。不一樣的按鈕和鍵擊能夠更改不一樣的「模式」;好比說:在「插入模式」下,輸入的文本會直接被插入到文檔;當按下「退出鍵」,「插入模式」就會更改成「命令模式」,而且光標的移動和功能的編輯都由字母來響應,例如:「j」用來移動光標到下一行;「k」用來移動光標到上一行,「x」能夠刪除當前光標處的字符,「i」能夠返回到「插入模式」(也可使用方向鍵)。
掌握簡單的vi命令使用十分必要。
使用vim編輯文件
vi $FILE
複製代碼
輸入i
進入INSERT模式,編輯完成後,輸入esc
退出輸入INSERT模式,進入命令模式,輸入:wq
寫入修改內容並退出vi。
具體使用十分複雜,能夠多作練習。簡單的使用以上大概能夠知足,由於在服務器中沒有圖形化界面,因此熟悉必定的vi操做是必須的。
sudo是linux系統管理指令,是容許系統管理員讓普通用戶執行一些或者所有的root命令的一個工具。
備註:普通用戶在執行須要root權限的命令時,須要使用此命令。
sudo $command
複製代碼
chown 命令將 File 或 Directory 參數指定的文件或目錄的全部者更改成 Owner 參數指定的用戶。
常見於某個文件或文件夾沒有相關的權限時,能夠用此命令修改權限。示例以下:
sudo chown -R $USER:$USER /var/www/
複製代碼
在大多數類Unix操做系統中,ps程序(「process status」的簡稱)能夠顯示當前運行的進程。一個相關的Unix工具top則能夠查看運行進程的實時信息。
ps
複製代碼
top
複製代碼
ps + grep能夠快速找到對應程序的進程信息:
ps -A | grep "vscode"
複製代碼
top + grep實時顯示系統中對應程序進程(好比微信)的資源佔用情況。
top | grep -i -w "wechat"
複製代碼
(這裏使用到的|
是pipeline,能夠粗略理解爲數據流從左到右的流動)
將內容複製到粘貼板,示例以下:
cat $FILE | pbcopy
複製代碼
而後愉快的ctrl + v就能夠了。
以上都只是簡單示例,每一個命令的深刻使用須要在實際工做中查詢、實踐。(若是以上分享存在錯誤的地方,歡迎各位同窗指正~)
最後,讓咱們用命令行提升工做效率~衝鴨!(●´∀`●)ノ