Linux 常用命令學習 之 一
打開終端之后的 我們會了解 所使用的 字符串含義
其中@前面的 zhuxushuai 是 當前的用戶名字
接下來的 zhuxushuai-virtual-machine 是 機器名字
最后的符號 $表示 當前是普通用戶
輸入指令 ls
是打印出當前所在目錄中所有文件和文件夾
shell 操作
command -options [argument]
command: Shell 命令名稱。
options:選項,同一種命令可能有不同的選項,不同的選項其實現的功能不同。
argument:Shell 命令是可以帶參數的,也可以不帶參數運行。
我們以 ls 代碼
舉例 ls
“ls”命令用來打印出當前目錄下的所有文件和文件夾
ls -l
“ls -l”同樣是打印出當前目錄下的所有文件和文件夾,但是此命令會列出所有文件和文件夾的詳細信息,比如文件大小、擁有者、創建日期等等。
ls/usr
“ls /usr”是用來打印出目錄“/usr”下的所有文件和文件夾。
快捷鍵 Tab可以 補全 代碼 好用
常用的 shell 命令
先 部分記錄 后續使用 詳細講述
一 : 目錄信息查看命令 ls
ls [選項] [路徑]
ls 命令主要用于顯示指定目錄下的內容,列出指定目錄下包含的所有的文件以及子目錄,
它的主要參數有:
-a 顯示所有的文件以及子目錄,包括以“.”開頭的隱藏文件。
-l 顯示文件的詳細信息,比如文件的形態、權限、所有者、大小等信息。
-t 將文件按照創建時間排序列出。
-A 和-a 一樣,但是不列出“.”(當前目錄)和“…”(父目錄)。
-R 遞歸列出所有文件,包括子目錄中的文件。
Shell 命令里面的參數是可以組合在一起用的,比如組合“-al”就是顯示所有文件的詳細信息,包括以“.”開頭的隱藏文件
二 : 目錄切換命令 cd
cd [路徑]
路徑就是我們要進入的目錄路徑,比如下面所示操作:
cd / //進入到根目錄“/”下,Linux 系統的根目錄為“/”,
cd /usr //進入到目錄“/usr”里面。
cd … //進入到上一級目錄。
cd ~ //切換到當前用戶主目錄
三 : 當前路徑顯示命令pwd
pwd 命令用來顯示當前工作目錄的絕對路徑,不需要任何的參數
四 : 系統信息查看命令 uname
unmae -r 列出當前系統的具體內核版本號
unmae -s 列出系統內核名稱
uname -o列出系統信息
五 :清屏命令 clear
clear 命令用于清除終端上的所有內容,只留下一行提示符。
六 : 切換用戶執行身份命令 sudo
Ubuntu(Linux)是一個允許多用戶的操作系統,其中權限最大的就是超級用戶 root,有時候我們執行一些操作的時候是需要用 root 用戶身份才能執行,比如安裝軟件。通過 sudo 命令可以使我們暫時將身份切換到 root 用戶。當使用 sudo 命令的時候是需要輸入密碼的,這里要注意輸入密碼的時候是沒有任何提示的!
七 :添加用戶命令 adduser
八 : 刪除用戶命令 deluser
九 : 切換用戶命令 su
十 : 顯示文件內容命令 cat
十一 : 顯示和配置網絡屬性命令 ifconfig
主要參數如下:
interface 網絡接口名稱,比如 eth0 等。
up 開啟網絡設備。
down 關閉網絡設備。
add IP 地址,設置網絡 IP 地址。
netmask add 子網掩碼。
十二 :系統幫助命令 man
Ubuntu 系統中有很多命令,這些命令都有不同的格式,不同的格式對應不同的功能,要完全記住這些命令和格式幾乎是不可能的,必須有一個幫助手冊,當我們需要了解一個命令的詳細信息的時候查閱這個幫助手冊就行了。Ubuntu 提供了一個命令來幫助用戶完成這個功能,那就是“man”命令,通過“man”命令可以查看其它命令的語法格式、主要功能、主要參數說明等
十三 : 系統重啟命令reboot
通過點擊 Ubuntu 主界面右上角的齒輪按鈕來選擇關機或者重啟系統,同樣的我們也可以使用 Shell 命令“reboot”來重啟系統,直接輸入命令“reboot”然后點擊回車鍵接口
十四 : 系統關閉命令poweroff
使用命令“reboot”可以重啟系統,使用命令“poweroff”就可以關閉系統,在終端中輸入命令“poweroff”然后按下回車鍵即可關閉 Ubuntu 系統
1.更新本地數據庫
如果想查看本地哪些軟件可以更新的話可以使用如下命令:
sudo apt-get update這個命令會訪問源地址,并且獲取軟件列表并保存在本電腦上
2.檢查依賴關系
有時候本地某些軟件可能存在依賴關系,所謂依賴關系就是 A 軟件依賴于 B 軟件。通過
如下命令可以查看依賴關系,如果存在依賴關系的話 APT 會提出解決方案:
sudo apt-get check
3.軟件安裝
這個是重點了,安裝軟件,使用如下命令:
sudo apt-get install package-name
可以看出上述命令是由“apt-get”和“install”組合在一起的,“package-name”就是要
安裝的軟件名字,“apt-get”負責下載軟件,“install”負責安裝軟件。比如我們要安裝軟件
Ubuntu 下的串口工具“minicom”,我們就可以使用如下命令:
sudo apt-get install minicom
執行上述命令以后就會自動下載和安裝 minicom 軟件
4、軟件更新
有時候我們需要更新軟件,更新軟件的話使用命令:
sudo apt-get upgrade package-name
其中 package-name 為要升級的軟件名字,比如我們升級剛剛安裝的 minicom 這個軟件
5、卸載軟件
如果要卸載某個軟件的話使用如下命令:
sudo apt-get remove package-name
其中 package-name 是要卸載的軟件,比如卸載前面安裝的 minicom 這個軟件
Linux 的 文件系統
操作系統就是處理各種數據的,這些數據在硬盤上就是二進制,人類肯定不能直接看懂這些二進制數據,要有一個翻譯器,將這些二進制的數據還原為人類能看懂的文件形式,這個工作就是由文件系統來完成的,文件系統的目的就是實現數據的查詢和存儲,由于使用場合、使用環境的不同,Linux 有多種文件系統,不同的文件系統支持不同的體系。
我們在使用 Windows 的時候新買一個硬盤回來一般肯定是將這個硬盤分為好幾個盤,比如 C 盤、D 盤等。這個叫磁盤的分割,Linux 下也支持磁盤分割,Linux 下常用的磁盤分割工具為:fdisk,fdisk 這個工具我們后面會詳細講解怎么用,因為我們移植 Linux 的時候需要將SD卡分為兩個分區來存儲不同的東西。在 Windows下我們創建一個新的盤符以后都要做格式化處理,格式化其實就是給這個盤符創建文件系統的過程,我們在 Windows 格式化某個盤的時候都會讓你選擇文件系統。
Windows 下一般有 FAT、NTFS 和 exFAT這些文件系統。同樣的,在 Linux 下我們使用 fdisk 創建好分區以后也是要先在創建好的分區上面創建文件系統,也就是格式化。在 Windows 下有磁盤分區的概念,比如 C,D,E 盤等,在 Linux 下沒有這個概念,因此Linux 下你找不到像 C、D、E 盤這樣的東西。前面我們說了 Linux 下可以給磁盤分割,但是沒有 C、D、E 盤那怎么訪問這些分區呢?在 Linux 下創建一個分區并且格式化好以后我們要將其“掛載”到一個目錄下才能訪問這個分區。Windows 的文件系統掛載過程是其內部完成的,用戶是看不到的,Linux 下我們使用 mount 命令來掛載磁盤。掛載磁盤的時候是需要確定掛載點的,也就是你的這個磁盤要掛載到哪個目錄下。
2、Linux 文件系統類型前面我們說了,在 Windows 下有 FAT、NTFS 和 exFAT 這樣的文件系統,在 Linux 下又有哪些文件系統呢,Linux下的文件系統主要有 ext2、ext3、ext4等文件系統。Linux還支持其他的 UNIX 文件系統,比如 XFS、JFS、UFS 等,也支持 Windows 的 FAT 文件系統和網絡文件系統 NFS 等。這里我們主要講一下 Linux 自帶的 ext2、ext3 和 ext4 文件系統。
在 Linux 下因為沒有 C、D 盤之說,因此 Linux 只有一個根目錄,沒有 C 盤根目錄、D 盤根目錄之類的。其實如果你的 Windows 只有一個 C 盤的話那么整個系統也就只有一個根目錄。Windows下的 C盤根目錄就是“C:”,在 Linux下的根目錄就是“/”
Linux 的 文件系統管理
我們打開 Linux的 文件管理 會展開出整個界面 但是這并不算是 進入了根目錄
我們點擊 計算機 再點開 home 我們會發現 我們創建了一個屬于 我們自己的 home 下用戶目錄
其 用 戶 根 目 錄 就 是 :/home/zuozhongkai。只要你創建了一個用戶,那么系統就會在/home 這個目錄下創建一個以這個用戶名命名的文件夾,這個文件夾就是這個用戶的根目錄。
我們在主屏幕 點擊 ls 顯示
會發現 在 終端上默認 進入的是當前用戶根目錄
然后我們通過文件管理 進入 home 下 的 用戶名文件夾
發現是正確的
ok 那么 我們現在 再 了解 別的方面
因為我們默認進入的是 用戶所屬的目錄欄
我們現在切換 目錄
再 $ 前面的 是 我們所進入的目錄
這是 計算機下的根目錄
/bin 存儲一些二進制可執行命令文件,/usr/bin 也存放了一些基于用戶的命令文件。
/sbin 存儲了很多系統命令,/usr/sbin 也存儲了許多系統命令。
/root 超級用戶 root 的根目錄文件。
/home 普通用戶默認目錄,在該目錄下,每個用戶都有一個以本用戶名命名的文件夾。
/boot 存放 Ubuntu 系統內核和系統啟動文件。
/mnt 通常包括系統引導后被掛載的文件系統的掛載點。
/dev 存放設備文件,我們后面學習 Linux 驅動主要是跟這個文件夾打交道的。
/etc 保存系統管理所需的配置文件和目錄。
/lib 保存系統程序運行所需的庫文件,/usr/lib 下存放了一些用于普通用戶的庫文件。
/lost+found 一般為空,當系統非正常關機以后,此文件夾會保存一些零散文件。
/var 存儲一些不斷變化的文件,比如日志文件
/usr 包括與系統用戶直接有關的文件和目錄,比如應用程序和所需的庫文件。
/media 存放 Ubuntu 系統自動掛載的設備文件。
/proc 虛擬目錄,不實際存儲在磁盤上,通常用來保存系統信息和進程信息。
/tmp 存儲系統和用戶的臨時文件,該文件夾對所有的用戶都提供讀寫權限。
/opt 可選文件和程序的存放目錄。
/sys 系統設備和文件層次結構,并向用戶程序提供詳細的內核數據信息。
- 文件操作 文件命令 touch
touch [參數] [文件名]
使用 touch 創建文件的時候,如果[文件名]的文件不存在,那就直接創建一個以[文件名]
命名的文件,如果[文件名]文件存在的話就僅僅修改一下此文件的最后修改日期,常用的命
令參數如下:
-a 只更改存取時間。
-c 不建立任何文件。
-d<日期> 使用指定的日期,而并非現在日期。
-t<時間> 使用指定的時間,而并非現在時間。
cd ~ 可以快速幫助我們 回到 用戶根目錄
touch test 表示 在 用戶目錄下 創建一個 名為 test的 文件
2.文件 創建 命令 - mkdir
既然可以創建文件,那么肯定也可以創建文件夾,創建文件夾使用命令“mkdir”,命令
格式如下:
mkdir [參數] [文件夾名目錄名]
主要參數如下:
-p 如所要創建的目錄其上層目錄目前還未創建,那么會一起創建上層目錄。
我們點擊 了 mkdir testdir1 /// mkdir testdir2
我們創建了 兩個文件夾
我們可以 看到 在相對于 之前的 文件 多了兩個文件夾
- 文件及目錄刪除命令—rm
既然有創建文件的命令,那肯定有刪除文件的命令,要刪除一個文件或者文件夾可以使
用命令“rm”,此命令可以完成刪除一個文件或者多個文件及文件夾,它可以實現遞歸刪除。
對于鏈接文件,只刪除鏈接,原文件保持不變,所謂的鏈接文件,其實就是 Windows 下的快
捷方式文件,此命令格式如下:
rm [參數] [目的文件或文件夾目錄名]
命令主要參數如下:
-d 直接把要刪除的目錄的硬連接數據刪成 0,刪除該目錄。
-f 強制刪除文件和文件夾(目錄)。
-i 刪除文件或者文件夾(目錄)之前先詢問用戶。
-r 遞歸刪除,指定文件夾(目錄)下的所有文件和子文件夾全部刪除掉。
-v 顯示刪除過程。
我們現在 實踐 刪除 文件 與 文件夾
rm 確實把 test 文件 刪除 了
但是 無法把 testdir 文件夾刪除
對于刪除文件夾 我們 用 rm 的話 可以在 rm [文件夾 ] -rf 的形式
如圖所示
完成了強制刪除
4、文件夾(目錄)刪除命令—rmdir
上面我們講解了如何使用命令“rm”刪除文件夾,那就是要加上參數“-rf”,其實
Linux 提供了直接刪除文件夾(目錄)的命令—rmdir,它可以不加任何參數的刪除掉指定的文件
夾(目錄),命令格式如下:
rmdir [參數] [文件夾(目錄)]
命令主要參數如下:
-p 刪除指定的文件夾(目錄)以后,若上層文件夾(目錄)為空文件夾(目錄)的話就將其一起
刪除。
刪除了 testdir2
5、文件復制命令—cp
在 Windows 下我們可以通過在文件上點擊鼠標右鍵來進行文件的復制和粘貼,在 Ubuntu
下我們也可以通過點擊文件右鍵進行文件的復制和粘貼。但是本節我們來講解如何在終端下
使用命令來進行文件的復制,Linux 下的復制命令為“cp”,命令描述如下:
cp [參數] [源地址] [目的地址]
主要參數描述如下:
-a 此參數和同時指定“-dpR”參數相同
-d 在復制有符號連接的文件時,保留原始的連接。
-f 強行復制文件,不管要復制的文件是否已經存在于目標目錄。
-I 覆蓋現有文件之前詢問用戶。
-p 保留源文件或者目錄的屬性。
-r 或-R 遞歸處理,將指定目錄下的文件及子目錄一并處理
接下來展示一連串的 關于cp 的操作
復制 文件
我們還可以復制 文件夾
cp -rf test2/ test3/
6、文件移動命令—mv
有時候我們需要將一個文件或者文件夾移動到另外一個地方去,或者給一個文件或者文件夾進行重命名,這個時候我們就可以使用命令“mv”了
mv [參數] [源地址] [目的地址]
主要參數描述如下:
-b 如果要覆蓋文件的話覆蓋前先進行備份。
-f 若目標文件或目錄與現在的文件重復,直接覆蓋目標文件或目錄。
-I 在覆蓋之前詢問用戶。
文件壓縮和解壓縮
1.命令 zip
zip命令看名字就知道是針對.zip文件的,用于將一個或者多個文件壓縮成一個.zip結尾的
文件,命令格式如下:
zip [參數] [壓縮文件名.zip] [被壓縮的文件]
主要參數函數如下:
-b<工作目錄> 指定暫時存放文件的目錄。
-d 從 zip 文件中刪除一個文件。
-F 嘗試修復已經損毀的壓縮文件。
-g 將文件壓縮入現有的壓縮文件中,不需要新建壓縮文件。
-h 幫助。
-j 只保存文件的名,不保存目錄。
-m 壓縮完成以后刪除源文件。
-n<字尾符號> 不壓縮特定擴展名的文件。
-q 不顯示壓縮命令執行過程。
zip -rv test2.zip test2上述命令中,-rv 表示遞歸壓縮并且顯示壓縮命令執行過程。
- 命令 unzip
unzip 命令用于對.zip 格式的壓縮包進行解壓,命令格式如下:
unzip [參數] [壓縮文件名.zip]
主要參數如下:
-l 顯示壓縮文件內所包含的文件。
-t 檢查壓縮文件是否損壞,但不解壓。
-v 顯示命令顯示的執行過程。
-Z 只顯示壓縮文件的注解。
-C 壓縮文件中的文件名稱區分大小寫。
-j 不處理壓縮文件中的原有目錄路徑。
-L 將壓縮文件中的全部文件名改為小寫。
-n 解壓縮時不要覆蓋原有文件。
-P<密碼> 解壓密碼。
-q 靜默執行,不顯示任何信息。
-x<文件列表> 指定不要處理.zip 中的哪些文件。
-d<目錄> 把壓縮文件解到指定目錄下。
3.命令 tar
我們前面講的 zip 和 unzip 這兩個是命令只適用于.zip 格式的壓縮和解壓,其它壓縮格式就用不了了,比如 Linux 下最常用的.bz2 和.gz 這兩種壓縮格式。其它格式的壓縮和解壓使用命令 tar,tar 將壓縮和解壓縮集合在一起,使用不同的參數即可
tar [參數] [壓縮文件名] [被壓縮文件名]
常用參數如下:
-c 創建新的壓縮文件。
-C<目的目錄> 切換到指定的目錄。
-f<備份文件> 指定壓縮文件。
-j 用 tar 生成壓縮文件,然后用 bzip2 進行壓縮。
-k 解開備份文件時,不覆蓋已有的文件。
-m 還原文件時,不變更文件的更改時間。
-r 新增文件到已存在的備份文件的結尾部分。
-t 列出備份文件內容。
-v 顯示指令執行過程。
-w 遭遇問題時先詢問用戶。
-x 從備份文件中釋放文件,也就是解壓縮文件。
-z 用 tar 生成壓縮文件,用 gzip 壓縮。
-Z 用 tar 生成壓縮文件,用 compress 壓縮。
tar -vcjf test1.tar.bz2 test1
tar -vczf test1.tar.gz test1
-vcjf 表示創建 bz2 格式的壓縮文件,-vczf 表示創建.gz 格式的壓縮文件
tar函數 還可以幫助我們 完成解壓
c 是壓縮 x是解壓
我們 使用
tar -vxjf
tar -vxzf 完成了 解壓的工作