Linux 常用命令集合
一 基本知識了解
1.1 目錄結構

/bin: 存放二進制可執行檔案,常用命令一般都在這里/etc: 存放系統管理和組態檔/home: 存放所有用戶檔案的根目錄,是用戶主目錄的基點/usr: 用于存放系統應用程式/opt: 額外安裝的可選應用程式包所放置的位置/proc: 虛擬檔案系統目錄,是系統記憶體的映射,可直接訪問這個目錄來獲取系統資訊/root: 超級用戶(系統管理員)的主目錄/sbin: 存放二進制可執行檔案,只有root才能訪問,這里存放的是系統管理員使用的系統級別的管理命令和程式/dev: 用于存放設備檔案/mnt: 系統管理員安裝臨時檔案系統的安裝點,系統提供這個目錄是讓用戶臨時掛載其他的檔案系統;/boot: 存放用于系統引導時使用的各種檔案/lib: 存放著和系統運行相關的庫檔案/tmp: 用于存放各種臨時檔案,是公用的臨時檔案存盤點/var: 用于存放運行時需要改變資料的檔案,也是某些大檔案的溢位區,比方說各種服務的日志檔案(系統啟動日志等,)等/lost+found: 這個目錄平時是空的
1.2 對比

1.3 Linux 鏈接概念
Linux 鏈接分兩種,一種被稱為硬鏈接(Hard Link),另一種被稱為符號鏈接(Symbolic Link),
情況下,ln命令產生硬鏈接,
- 硬鏈接:兩個檔案名指向同一個檔案,A 和 B 對檔案系統來說是完全平等的,洗掉其中任何一個都不會影響另外一個的訪問
- 軟連接:A 和 B 之間是“主從”關系,如果 B 被洗掉了,A 仍然存在(因為兩個是不同的檔案),但指向的是一個無效的鏈接,
二 常用命令
2.1 關機命令
sync:將資料由記憶體同步到硬碟中shutdown: 關機指令shutdown –h 10: 這個命令告訴大家,計算機將在10分鐘后關機shutdown –h now:立馬關機shutdown –h 20:25;系統會在今天20:25關機shutdown –h +10: 十分鐘后關機shutdown –r now:系統立馬重啟shutdown –r +10: 系統十分鐘后重啟reboot: 就是重啟halt: 關閉系統
最后總結一下,不管是重啟系統還是關閉系統,首先要運行 sync命令,把記憶體中的資料寫到磁盤中,
2.2 基本命令
ls: 列出目錄cd:切換目錄pwd:顯示目前的目錄mkdir:創建一個新的目錄rmdir:洗掉一個空的目錄cp: 復制檔案或目錄rm: 移除檔案或目錄mv: 移動檔案與目錄,或修改檔案與目錄的名稱df: 顯示磁盤空間使用情況du: 也是查看使用空間的,但是與df命令不同的是Linux du命令是對檔案和目錄磁盤使用的空間的查看cat: 用于連接檔案并列印到標準輸出設備上tac:從最后一行開始顯示,可以看出 tac 是 cat 的倒著寫!nl: 顯示的時候,順道輸出行號!more: 一頁一頁的顯示檔案內容less: 與 more 類似,但是比 more 更好的是,他可以往前翻頁!head: 只看頭幾行tail:只看尾巴幾行useradd:添加用戶,還有洗掉用戶,修改用戶,密碼管理
詳細用法
- ls
ls -a 列出目錄所有檔案,包含以.開始的隱藏檔案
ls -A 列出除.及..的其它檔案
ls -r 反序排列
ls -t 以檔案修改時間排序
ls -S 以檔案大小排序
ls -h 以易讀大小顯示
ls -l 除了檔案名之外,還將檔案的權限、所有者、檔案大小等資訊詳細列出來
- cd
cd / 進入該目錄
cd ~ 進入 “home” 目錄
cd .. 退回上一層目錄
- mkdir
-m :組態檔的權限喔!直接配置,不需要看默認權限 (umask) 的臉色~
-p :幫助你直接將所需要的目錄(包含上一級目錄)遞回創建起來!
- cp
-a:相當於 -pdr 的意思,至於 pdr 請參考下列說明;(常用)
-p:**連同檔案的屬性一起復制過去,而非使用默認屬性(備份常用);
-d:**若來源檔為連結檔的屬性(link file),則復制連結檔屬性而非檔案本身;
-r:**遞回持續復制,用於目錄的復制行為;(常用)
-f:**為強制(force)的意思,若目標檔案已經存在且無法開啟,則移除后再嘗試一次;
-i:**若目標檔(destination)已經存在時,在覆寫時會先詢問動作的進行(常用)
-l:**進行硬式連結(hard link)的連結檔創建,而非復制檔案本身,
-s:**復制成為符號連結檔 (symbolic link),亦即『捷徑』檔案;
-u:**若 destination 比 source 舊才升級 destination !
- rm
-f :就是 force 的意思,忽略不存在的檔案,不會出現警告資訊;
-i :互動模式,在洗掉前會詢問使用者是否動作
-r :遞回洗掉啊!最常用在目錄的洗掉了!這是非常危險的選項!!!
- mv
-f :force 強制的意思,如果目標檔案已經存在,不會詢問而直接覆寫;
-i :若目標檔案 (destination) 已經存在時,就會詢問是否覆寫!
-u :若目標檔案已經存在,且 source 比較新,才會升級 (update)
- df
-a 全部檔案系統串列
-h 以方便閱讀的方式顯示資訊
-i 顯示inode資訊
-k 區塊為1024位元組
-l 只顯示本地磁盤
-T 列出檔案系統型別
- du
-a 顯示目錄中所有檔案大小
-k 以KB為單位顯示檔案大小
-m 以MB為單位顯示檔案大小
-g 以GB為單位顯示檔案大小
-h 以易讀方式顯示檔案大小
-s 僅顯示總計
-c或--total 除了顯示個別目錄或檔案的大小外,同時也顯示所有目錄或檔案的總和
- cat
-A :相當於 -vET 的整合選項,可列出一些特殊字符而不是空白而已;
-b :列出行號,僅針對非空白行做行號顯示,空白行不標行號!
-E :將結尾的斷行位元組 $ 顯示出來;
-n :列印出行號,連同空白行也會有行號,與 -b 的選項不同;
-T :將 [tab] 按鍵以 ^I 顯示出來;
-v :列出一些看不出來的特殊字符
- nl
- -b :指定行號指定的方式,主要有兩種:-b a :表示不論是否為空行,也同樣列出行號(類似 cat -n);-b t :如果有空行,空的那一行不要列出行號(默認值);
- -n :列出行號表示的方法,主要有三種:-n ln :行號在熒幕的最左方顯示;-n rn :行號在自己欄位的最右方顯示,且不加 0 ;-n rz :行號在自己欄位的最右方顯示,且加 0 ;
- -w :行號欄位的占用的位數,
2.3 權限命令
Linux系統是一種典型的多用戶系統,不同的用戶處于不同的地位,擁有不同的權限,為了保護系統的安全性,Linux系統對不同的用戶訪問同一檔案(包括目錄檔案)的權限做了不同的規定,在Linux中我們可以使用ll或者ls –l命令來顯示一個檔案的屬性以及檔案所屬的用戶和組,

- 當為[ **d** ]則是目錄
- 當為[ **-** ]則是檔案;
- 若是[ **l** ]則表示為鏈接檔案 ( link file );
- 若是[ **b** ]則表示為裝置檔案里面的可供儲存的介面設備 ( 可隨機存取裝置 );
- 若是[ **c** ]則表示為裝置檔案里面的串行埠設備,例如鍵盤、滑鼠 ( 一次性讀取裝置 ),
接下來的字符中,以三個為一組,且均為『rwx』 的三個引數的組合,其中,[ r ]代表可讀(read)、[ w ]代表可寫(write)、[ x ]代表可執行(execute),要注意的是,這三個權限的位置不會改變,如果沒有權限,就會出現減號[ - ]而已,從左至右用0-9這些數字來表示,第0位確定檔案型別,第1-3位確定屬主(該檔案的所有者)擁有該檔案的權限,第4-6位確定屬組(所有者的同組用戶)擁有該檔案的權限,第7-9位確定其他用戶擁有該檔案的權限,
-
第1、4、7位表示讀權限,如果用"r"字符表示,則有讀權限,如果用"-"字符表示,則沒有讀權限
-
第2、5、8位表示寫權限,如果用"w"字符表示,則有寫權限,如果用"-"字符表示沒有寫權限
-
第3、6、9位表示可執行權限,如果用"x"字符表示,則有執行權限,如果用"-"字符表示,則沒有執行權限
-
chgrp:更改檔案屬組
-u :目錄或者檔案的當前的用戶
-g :目錄或者檔案的當前的群組
-o :除了目錄或者檔案的當前用戶或群組之外的用戶或者群組
-a :所有的用戶及群組
chmod:更改檔案9個屬性
-c 顯示更改的部分的資訊
-R 處理指定目錄及子目錄
2.4 Vim命令
基本上 vi/vim 共分為三種模式,分別是命令模式(Command mode),輸入模式(Insert mode)和底線命令模式(Last line mode),這三種模式的作用分別是:
命令模式:
用戶剛剛啟動vi/vim,便進入了命令模式,
此狀態下敲擊鍵盤動作會被Vim識別為命令,而非輸入字符,比如我們此時按下i,并不會輸入一個字符,i被當作了一個命令,
以下是常用的幾個命令:
- i 切換到輸入模式,以輸入字符,
- x 洗掉當前游標所在處的字符,
- : 切換到底線命令模式,以在最底一行輸入命令,
若想要編輯文本:啟動Vim,進入了命令模式,按下i,切換到輸入模式,
命令模式只有一些最基本的命令,因此仍要依靠底線命令模式輸入更多命令,
輸入模式:
在命令模式下按下i就進入了輸入模式,
在輸入模式中,可以使用以下按鍵:
- 字符按鍵以及Shift組合,輸入字符
- ENTER,回車鍵,換行
- BACK SPACE,退格鍵,洗掉游標前一個字符
- DEL,洗掉鍵,洗掉游標后一個字符
- 方向鍵,在文本中移動游標
- HOME/END,移動游標到行首/行尾
- Page Up/Page Down,上/下翻頁
- Insert,切換游標為輸入/替換模式,游標將變成豎線/下劃線
- ESC,退出輸入模式,切換到命令模式
底線命令模式
在命令模式下按下:(英文冒號)就進入了底線命令模式,
底線命令模式可以輸入單個或多個字符的命令,可用的命令非常多,
在底線命令模式中,基本的命令有(已經省略了冒號):
- q 退出程式
- w 保存檔案
按ESC鍵可隨時退出底線命令模式,
2.5 網路通訊命令
ifconfig: 用于查看和配置 Linux 系統的網路介面iptables: ,是一個配置 Linux 內核防火墻的命令列工具,功能非常強大,對于我們開發來說,主要掌握如何開放埠即可, (iptables -A INPUT -p tcp --dport 80 -j ACCEP)netstat: 用于顯示網路狀態ping: 用于檢測主機telnet: 用于遠端登入
2.6 系統命令
date: 顯示或設定系統的日期與時間free: 顯示系統記憶體使用情況,包括物理記憶體、互動區記憶體(swap)和內核緩沖區記憶體kill:結束掉某行程ps:用來查看當前運行的行程狀態
-A 顯示所有行程
a 顯示所有行程
-a 顯示同一終端下所有行程
c 顯示行程真實名稱
e 顯示環境變數
f 顯示行程間的關系
r 顯示當前終端運行的行程
-aux 顯示所有包含其它使用的行程
rmp: 命令用于管理套件top: 顯示當前系統正在執行的行程的相關資訊,包括行程 ID、記憶體占用率、CPU 占用率等
2.7 解壓命令
tar: 用來壓縮和解壓檔案,tar 本身不具有壓縮功能,只具有打包功能,有關壓縮及解壓是呼叫其它的功能來完成,
-c 建立新的壓縮檔案
-f 指定壓縮檔案
-r 添加檔案到已經壓縮檔案包中
-u 添加改了和現有的檔案到壓縮包中
-x 從壓縮包中抽取檔案
-t 顯示壓縮檔案中的內容
-z 支持gzip壓縮
-j 支持bzip2壓縮
-Z 支持compress解壓檔案
-v 顯示操作程序
壓縮
tar -cvf log.tar 1.log,2.log 或tar -cvf log.*
解壓
tar -zcvf /tmp/etc.tar.gz /etc
2.8 防火墻基本命令
# 查看firewall服務狀態
systemctl status firewalld
# 開啟、重啟、關閉、firewalld.service服務
# 開啟
service firewalld start
# 重啟
service firewalld restart
# 關閉
service firewalld stop
# 查看防火墻規則
firewall-cmd --list-all # 查看全部資訊
firewall-cmd --list-ports # 只看埠資訊
# 開啟埠
開埠命令:firewall-cmd --zone=public --add-port=80/tcp --permanent
重啟防火墻:systemctl restart firewalld.service
命令含義:
--zone #作用域
--add-port=80/tcp #添加埠,格式為:埠/通訊協議
--permanent #永久生效,沒有此引數重啟后失效
三 線上安裝
3.1 redis的安裝
- 安裝
gcc
yum install cpp
- 下載
wget http://download.redis.io/releases/redis-4.0.11.tar.gz
- 解壓
tar xzf redis-4.0.11.tar.gz
- 復制
cp -r redis-4.0.11 /usr/local/redis
- 生效
make
- 修改config
daemonize yes
- 啟動服務端
./src/redis-server

- 連接測驗
./src/redis-cli

- 思考,可以設定開機自啟嗎?
3.2 docker安裝
#1.卸載舊版本
yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
#2.需要的安裝包
yum install -y yum-utils
#3.設定鏡像的倉庫
yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
#默認是從國外的,不推薦
#推薦使用國內的
yum-config-manager \
--add-repo \
https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
#更新yum軟體包索引
yum makecache fast
#4.安裝docker相關的 docker-ce 社區版 而ee是企業版
yum install docker-ce docker-ce-cli containerd.io
#5、啟動docker
#root用戶
systemctl start docker
#非root用戶
sudo systemctl start docker
#6. 使用docker version查看是否按照成功
docker version
#7. 測驗
docker run hello-world
[root@shu /]# docker run hello-world
3.3 Tomcat安裝
- 安裝好了Java環境后我們可以測驗下Tomcat!準備好Tomcat的安裝包!
- 將檔案移動到
/usr/tomcat/下,并解壓
[root@]# mv apache-tomcat-9.0.22.tar.gz /usr
[root@]# cd /usr
[root@]# ls
apache-tomcat-9.0.22.tar.gz
[root@]# tar -zxvf apache-tomcat-9.0.22.tar.gz # 解壓
- 運行Tomcat,進入bin目錄,和我們以前在Windows下看的都是一樣的
# 執行:startup.sh -->啟動tomcat
# 執行:shutdown.sh -->關閉tomcat
./startup.sh
./shutdown.sh
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/272592.html
標籤:其他
上一篇:Linux--檔案系統
