Linux - 01
一、概述
-
Linux 是一套免費使用和自由傳播的類 Unix 操作系統(tǒng),是一個基于 POSIX(可移植操作系統(tǒng)接口)和 UNIX 的多用戶、多任務(wù)、支持多線程和多 CPU 的操作系統(tǒng);
-
Linux 是一個操作系統(tǒng),操作系統(tǒng)本身也是一個軟件;
-
Linux 能運行主要的 UNIX 工具軟件、應(yīng)用程序和網(wǎng)絡(luò)協(xié)議,它支持 32 位和 64 位硬件;
-
Linux 繼承了 Unix 以網(wǎng)絡(luò)為核心的設(shè)計思想,是一個性能穩(wěn)定的多用戶網(wǎng)絡(luò)操作系統(tǒng);
-
目前市面上比較知名的 Linux 發(fā)行版有:Ubuntu、RedHat、CentOS 等。
二、Linux 環(huán)境搭建
-
在阿里云官網(wǎng)上,購買云服務(wù)器 ECS(新用戶可以免費使用三個月)之后,可以看阿里云官方文檔快速入門:文檔 1、文檔 2
- 這里使用 CentOS 7;
- 通過 Workbench 遠程連接了云服務(wù)器 ECS 的實例;
- 通過部署 Apache 服務(wù)熟悉云服務(wù)器。
注意點:
- 如果在創(chuàng)建 ECS 實例時未設(shè)置密碼,則需要通過控制臺設(shè)置登錄密碼,設(shè)置實例密碼方法;
- 云服務(wù)器就是一臺遠程電腦,服務(wù)器一般不會關(guān)機;
- 要熟悉在控制臺中設(shè)置安全組規(guī)則的方法,及時將所需的端口號開放,否則外界無法訪問。
- 可以在官網(wǎng)下載 Xshell 和 Xftp,Xshell 是遠程連接工具,Xftp 可以用于文件上傳(在聯(lián)想應(yīng)用商店中也可以下載);
- 下載好后,為了后續(xù)操作,要在安全組中打開所需的端口號:
- Xshell 端口號:22;
- Xftp 端口號:21。
- 使用 Xshell 連接服務(wù)器,顯示
Welcome to Alibaba Cloud Elastic Compute Service !
表示連接成功
- 上傳文件時,只需要打開 Xftp,將 Windows 中的文件(如:jar 包、安裝包等)直接拖到遠程 Linux 服務(wù)器對應(yīng)位置即可
三、基本指令操作
-
Linux 系統(tǒng)開機時,會啟動許多程序,這些程序叫做“守護進程”(daemon),在 Windows 中叫做“服務(wù)”(service);
-
Linux 系統(tǒng)最高權(quán)限賬戶為 root,可以操作一切;
-
服務(wù)器很少關(guān)機,除非特殊情況,不得已才會關(guān)機;
-
在 Linux 系統(tǒng)中進行命令操作時,沒有錯誤就代表操作成功;
-
在 Linux 系統(tǒng)中一切皆文件,根目錄是
/
,所有文件都掛載在這個節(jié)點下; -
所有的 Linux 指令可以組合使用;
-
絕對路徑都是以
/
開頭,相對路徑可以用../../
返回到所需的目錄繼續(xù)尋找; -
輸入文件的前幾個字母,按 Tab 鍵會自動補全;
-
不要使用
rm -rf /
,這會使系統(tǒng)中所有的文件被刪除! -
Linux 系統(tǒng)是一種典型的多用戶系統(tǒng),不同的用戶處于不同的地位,擁有不同的權(quán)限;
-
Linux 系統(tǒng)為了保護系統(tǒng)的安全性,對不同的用戶訪問同一文件(包括目錄文件)的權(quán)限做了不同的規(guī)定;
-
在 Linux 系統(tǒng)中:
- 對于每個文件來說,都有一個特定的所有者,也就是對該文件具有所有權(quán)的用戶;
- 對于用戶來說,是按組分類的,一個用戶屬于一個或多個組;
- 文件所有者以外的用戶又可以分為文件所有者的同組用戶和其他用戶;
- 因此,Linux 系統(tǒng)按文件所有者、文件所有者同組用戶和其他用戶來規(guī)定了不同的文件訪問權(quán)限。
-
用指令
ifconfig
可以查看網(wǎng)絡(luò)配置; -
CentOS 7 系統(tǒng)中的網(wǎng)絡(luò)配置目錄在:
/etc/sysconfig/network-scripts
; -
在 Linux 中可以使用
Ctrl + C
來中斷正在執(zhí)行的命令。
1. 關(guān)機指令(一般不需要使用)
指令 | 說明 |
---|---|
sync | 將數(shù)據(jù)由內(nèi)存同步到硬盤中,要在關(guān)機前執(zhí)行 |
shutdown | 關(guān)機指令 |
reboot | 重啟 |
halt | 關(guān)閉系統(tǒng) |
注意:可以通過
man shutdown
來看幫助文檔。
2. 目錄相關(guān)的指令
指令 | 說明 |
---|---|
cd + /絕對路徑 | 使用絕對路徑切換到指定目錄下 |
cd … | 返回上一級目錄 |
cd …/…/相對路徑 | 在當前目錄下,使用相對路徑切換到指定目錄下,一次 ../ 表示退回一次上級目錄 |
cd 相對路徑 | 在當前目錄下,使用相對路徑切換到指定目錄,注意路徑前沒有 /
|
cd ~ | 無論現(xiàn)在在哪個目錄,直接切換到當前用戶目錄 root 下,相當于 cd /root
|
pwd | 顯示當前所在目錄的絕對路徑 |
ls | 查看并列出當前目錄下的所有文件 |
ls + 目錄 | 查看并列出指定目錄下的所有文件 |
ls -a | 查看全部的文件,包括隱藏文件 |
ls -l | 列出所有的文件,包含文件的屬性和權(quán)限,沒有隱藏文件 |
mkdir + 目錄名 | 創(chuàng)建一個目錄 |
mkdir -p 目錄1/目錄2/目錄3 | 遞歸創(chuàng)建多級目錄 |
rmdir + 目錄名 | 刪除一個空的目錄,如果該目錄不為空,則刪除失敗 |
rmdir -p 目錄1/目錄2/目錄3 | 遞歸刪除層級目錄,從目錄 3 開始向上刪除,直到遇到不為空的文件夾或者全部刪除為止 |
cp + 原來的文件 + 新的位置 | 復制文件,這里新的位置使用絕對路徑和相對路徑都可以 |
cp -r + 原來的目錄 + 新的位置 | 復制目錄,使用 -r 實現(xiàn)遞歸復制 |
rm 文件名 | 刪除文件 |
rm -r 目錄名 |
遞歸刪除一個目錄,不用管目錄是否為空,注意和 rmdir + 目錄名 對比 |
rm -rf 目錄名 |
rm -r 在刪除前會詢問,而 rm -rf 則直接刪除 |
mv + 文件/目錄 + 新的位置 | 移動文件或者目錄,這里新的位置使用絕對路徑和相對路徑都可以 |
mv + 文件/目錄 + 新的名稱 | 重命名 |
Linux 系統(tǒng)中的目錄:
對目錄的解釋:
- /bin :Binary 的縮寫,存放著最經(jīng)常使用的命令;
- /boot :存放啟動 Linux 時使用的一些核心文件,包括一些連接文件和鏡像文件(不要操作);
- /dev :Device 的縮寫,存放著 Linux 的外部設(shè)備,在 Linux 中,訪問設(shè)備和訪問文件的方式相同;
- /etc :用來存放系統(tǒng)管理所需要的所有配置文件和子目錄;
- /home :用戶的主目錄,在 Linux 中,每個用戶都有一個自己的目錄,目錄名一般以用戶的賬號命名;
- /lib :存放著系統(tǒng)最基本的動態(tài)連接共享庫,作用類似于 Windows 中的 DLL 目錄(不要操作);
- /lost+found :這個目錄一般情況為空,但是當系統(tǒng)非法關(guān)機時,這里就存放了突然關(guān)機的一些文件;
- /media :Linux 系統(tǒng)會自動識別一些設(shè)備,如 U 盤、光驅(qū)等,當識別后,就會把識別的設(shè)備掛載到這個目錄下;
- /mnt :系統(tǒng)提供該目錄是為了用戶臨時掛載別的文件系統(tǒng)的,我們后面會把一些本地文件掛載在這個目錄下;
- /opt :用于給主機額外安裝軟件的目錄,默認為空,之后可以將安裝的 MySQL 數(shù)據(jù)庫等放在該目錄下;
- /proc :一個虛擬的目錄,是系統(tǒng)內(nèi)存的映射,可以通過直接訪問這個目錄來獲取系統(tǒng)信息(不要操作);
- /root :系統(tǒng)管理員目錄,也稱為超級權(quán)限者的用戶主目錄;
- /run :是一個臨時文件系統(tǒng),存儲系統(tǒng)啟動以來的信息,當系統(tǒng)重啟時,這個目錄中的文件應(yīng)該被刪除或清除;
- /sbin :存放系統(tǒng)管理員使用的系統(tǒng)管理程序;
- /srv :該目錄存放一些服務(wù)啟動之后需要提取的數(shù)據(jù);
- /sys :這是 Linux 2.6 內(nèi)核的一個很大變化,該目錄安裝了 2.6 內(nèi)核中新出現(xiàn)的一個文件系統(tǒng) sysfs;
- /temp :這個目錄用來存放一些臨時文件,用完可以刪掉,例如安裝包等;
- /usr :用戶的很多應(yīng)用程序和文件都會放在這個目錄下,類似于 Windows 中的 Program Files 目錄;
- /usr/bin :系統(tǒng)用戶使用的應(yīng)用程序;
- /usr/sbin :超級用戶使用的比較高級的管理程序和系統(tǒng)守護程序;
- /usr/src :內(nèi)核源代碼默認的放置目錄;
- /var :存放著不斷擴充的東西,習慣將那些經(jīng)常被修改的東西放在這個目錄下,例如各種日志文件等。
指令實際操作
3. 文件屬性相關(guān)的指令
指令 | 說明 |
---|---|
chown –R 屬主名 文件名 | 更改文件屬主,參數(shù) -R 表示遞歸,會使該目錄下的所有文件的屬組都會更改,一般不需要更改
|
chgrp -R 屬組名 文件名 | 更改文件屬組,一般不需要更改 |
chmod -R xxx 文件或目錄 | 更改文件屬性 |
注意:更改文件屬性時,其中的 x 為 0 - 7 的數(shù)字,代表每個組的權(quán)限:r — 4、w — 2、x — 1,例如:rwx — 7、r-x — 5。
使用 ls -l
指令來顯示一個文件的屬性以及文件所屬的用戶和組:
對文件屬性的解釋:
- 第 1 個字符確定文件類型,代表這個文件是目錄、文件或鏈接文件等:
- d :目錄文件;
- - :文件;
- l :鏈接文檔;
- b :裝置文件里面的可供儲存的接口設(shè)備(可隨機存取裝置);
- c :裝置文件里面的串行端口設(shè)備,例如鍵盤、鼠標(一次性讀取裝置)。
- 第 2 到 10 個字符,三個為一組,共三組,每一組是
rwx
的三個參數(shù)的組合,三個參數(shù)的位置固定:
- 參數(shù):
- r :read,代表可讀;
- w :write,代表可寫;
- x :execute,代表可執(zhí)行;
- - :減號,代表沒有權(quán)限。
- 組:
- 第一組:owner,表示文件創(chuàng)建者或所有者對該文件所具有的權(quán)限;
- 第二組:group,表示文件創(chuàng)建者或所有者所在組的同組其他用戶所具有的權(quán)限;
- 第三組:others,表示其他組的其他用戶所具有的權(quán)限。
指令實際操作
4. 文件內(nèi)容相關(guān)的指令
指令 | 說明 |
---|---|
cat | 從第一行開始顯示文件內(nèi)容,可以用來讀文章、配置文件等 |
tac | 和 cat 指令相反,從最后一行開始顯示文件內(nèi)容 |
nl | 在文件內(nèi)容前,顯示行號,方便看代碼 |
more | 一頁一頁顯示文件內(nèi)容,空格可以翻頁,Enter 可以逐行顯示,:f 可以顯示當前行號,q 退出 |
less | 基本操作和 more 相同,此外,用方向鍵 ↑ 和 ↓ 可以控制翻頁,用 / 或 ? + 字符串可以查詢指定的字符串 |
head -n xx | 只看前 xx 行,xx 為數(shù)字,如果沒有 -n 參數(shù),默認顯示 10 行 |
tail -n xx | 只看后 xx 行 |
tail -f | 把文件里的最尾部的內(nèi)容顯示在屏幕上,并且不斷刷新,只要文件更新就可以看到最新的文件內(nèi)容 |
man + 指令 | 查看相應(yīng)指令的使用文檔 |
注意:以上指令后面直接加要操作的文件名即可。
部分指令實際操作
5. 硬鏈接和軟連接
指令 | 說明 |
---|---|
ln f1 f2 | 給文件 f1 創(chuàng)建一個硬鏈接 f2 |
ln -s f1 f3 | 給文件 f1 創(chuàng)建一個軟鏈接 f3 |
touch + 文件名 | 創(chuàng)建文件 |
echo “字符串” >> f1 | 向文件 f1 中輸入字符串 |
Linux 的鏈接分為兩種:硬鏈接(Hard Link)和軟鏈接(也叫符號鏈接,Symbolic Link)。
- 硬鏈接:通過索引節(jié)點來進行連接,在 Linux 的文件系統(tǒng)中,保存在磁盤分區(qū)中的文件不管是什么類型都給它分配一個編號,稱為索引節(jié)點號(Inode Index)。在 Linux 中,多個文件名指向同一索引節(jié)點是存在的。比如:A 是 B 的硬鏈接(A 和 B 都是文件名),則 A 的目錄項中的 inode 節(jié)點號與 B 的目錄項中的 inode 節(jié)點號相同,即一個 inode 節(jié)點對應(yīng)兩個不同的文件名,兩個文件名指向同一個文件,A 和 B 對文件系統(tǒng)來說是完全平等的。刪除其中任何一個都不會影響另外一個的訪問。硬連接的作用是允許一個文件擁有多個有效路徑名,這樣用戶就可以建立硬連接到重要文件,以防止“誤刪”的功能。其原因如上所述,因為對應(yīng)該目錄的索引節(jié)點有一個以上的連接。只刪除一個連接并不影響索引節(jié)點本身和其它的連接,只有當最后一個連接被刪除后,文件的數(shù)據(jù)塊及目錄的連接才會被釋放。也就是說,文件真正刪除的條件是與之相關(guān)的所有硬連接文件均被刪除;
- 軟鏈接:軟鏈接文件有類似于 Windows 的快捷方式,它實際上是一個特殊的文件。在軟鏈接中,文件實際上是一個文本文件,其中包含的有另一文件的位置信息。比如:A 是 B 的軟鏈接(A 和 B 都是文件名),A 的目錄項中的 inode 節(jié)點號與 B 的目錄項中的 inode 節(jié)點號不相同,A 和 B 指向的是兩個不同的 inode,繼而指向兩塊不同的數(shù)據(jù)塊。但是 A 的數(shù)據(jù)塊中存放的只是 B 的路徑名(可以根據(jù)這個找到 B 的目錄項)。A 和 B 之間是“主從”關(guān)系,如果 B 被刪除了,A 仍然存在(因為兩個是不同的文件),但指向的是一個無效的鏈接。
總結(jié):
- 硬鏈接相當于 Java 中對象的引用,一個對象的引用可以有多個,但是這些引用都指向內(nèi)存中的同一個地址;
- 軟鏈接相當于 Windows 的快捷方式,卸載軟件后,快捷方式也將無效。
指令實際操作
四、Vim 編輯器
1. 概述
-
Vim 是從 vi 發(fā)展出來的一個文本編輯器,有代碼補完、編譯及錯誤跳轉(zhuǎn)等方便編程的功能,在程序員中被廣泛使用;
-
Vim是一個高度可配置的文本編輯器,旨在使創(chuàng)建和更改任何類型的文本都非常高效;
-
Vim 官網(wǎng):點此進入;
-
Vim 有三種使用模式:
- 命令模式(Command mode):此狀態(tài)下敲擊鍵盤動作會被 Vim 識別為命令,而非輸入字符;
- 輸入模式(Insert mode):該模式下可以輸入字符,編輯文本;
- 底線命令模式(Last line mode):在該模式下,可以輸入單個或多個字符的命令。
-
進入和退出三種模式的方式
模式 | 進入方式 | 退出方式 |
---|---|---|
命令模式 |
vim 指令 + 文件名 |
|
輸入模式 | 在命令模式下輸入 i
|
按 Esc 退出,切換到命令模式 |
底線命令模式 | 在命令模式下輸入 :
|
按 Esc 退出,切換到命令模式 |
注:
- 命令模式只有一些最基本的命令,因此,要依靠底線命令模式輸入更多命令;
- 更詳細的使用和操作在第三小節(jié)。
2. 相關(guān)指令
命令模式下
指令 | 說明 |
---|---|
i | 切換到輸入模式 |
: | 切換到底線命令模式 |
x | 刪除文本內(nèi)容,也就是刪除當前光標所在處的字符,也可以通過按鍵 Delete 來實現(xiàn) |
PageUp 按鍵 | 屏幕向上移動一頁 |
PageDown 按鍵 | 屏幕向下移動一頁 |
數(shù)字 + 空格 | 光標向右移動 n 個位置 |
數(shù)字 + Enter | 光標向下移動 n 行 |
/ + 字符串 |
搜索指定字符串,搜索到后使用 n 或 N 跳轉(zhuǎn)到下一個或上一個 |
u |
撤銷前一個操作,相當于 Windows 中的 Ctrl + Z
|
輸入模式下,主要是輸入字符,編輯文本,因此沒有指令,是通過鍵盤上的按鍵來進行操作
按鍵 | 說明 |
---|---|
字符鍵 | 輸入字符 |
Enter、Backspace、Delete、方向鍵 | 換行、刪除前、刪除后、移動光標 |
Insert | 輸入方式切換為 Insert 和 replace 模式 |
Esc | 退出輸入模式,切換到命令模式 |
底線命令模式下
指令 | 說明 |
---|---|
q + 回車 | 退出程序,即退出 Vim |
w + 回車 | 保存文件,切換到命令模式 |
wq + 回車 | 組合指令,保存并退出 Vim |
set nu | 顯示行號 |
set nonu | 取消行號 |
Esc 按鍵 | 退出底線命令模式,切換到命令模式 |
3. 使用
使用 vim
指令 + 文件名,進入命令模式
在命令模式下,輸入 i
指令,進入輸入模式
在命令模式下,輸入 :
指令,進入底線命令模式
使用 cat
指令查看文件內(nèi)容文章來源:http://www.zghlxwxcb.cn/news/detail-823190.html
文章來源地址http://www.zghlxwxcb.cn/news/detail-823190.html
到了這里,關(guān)于Linux:環(huán)境搭建、基本指令操作、Vim 編輯器的使用的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!