Linux中CentOS 7的安裝及Linux常用命令

来源:https://www.cnblogs.com/wren/archive/2022/09/26/16729483.html
-Advertisement-
Play Games

1. 前言 什麼是Linux Linux是一套免費使用和自由傳播的操作系統。說到操作系統,大家比較熟知的應該就是Windows和MacOS操作系統,我們今天所學習的Linux也是一款操作系統。 為什麼要學Linux 那麼我們為什麼要學習Linux呢,主要出於兩個方面的原因。 1). 企業用人要求 以 ...


1. 前言


什麼是Linux


在這裡插入圖片描述


Linux是一套免費使用和自由傳播的操作系統。說到操作系統,大家比較熟知的應該就是Windows和MacOS操作系統,我們今天所學習的Linux也是一款操作系統。


為什麼要學Linux


那麼我們為什麼要學習Linux呢,主要出於兩個方面的原因。


1). 企業用人要求

以下,是從知名招聘網站上搜索的java開發工程師的崗位要求,在很多的崗位要求中都提到了Linux操作系統的經驗。


在這裡插入圖片描述


為什麼作為javaEE開發工程師,企業還要求我們會Linux操作系統的相關知識呢?

這是因為Linux操作系統提供了很多穩定的發行版本,廣泛的應用在我們的各種伺服器操作系統領域,我們將來開發出來的項目,最終要上線運行,就需要將項目部署在Linux伺服器中。


2). 個人發展需要


在這裡插入圖片描述


我們作為javaEE開發工程師,將來在企業中開發時會涉及到很多的資料庫、中間件等技術,比如MySQL、Redis、MQ等技術,而這些應用軟體大多都是需要安裝在Linux系統中使用的。我們做為開發人員,是需要通過遠程工具連接Linux操作系統,然後來操作這些軟體的。而且一些小公司,可能還需要我們自己在伺服器上安裝這些軟體。

所以,不管從企業的用人需求層面,還是個人發展需要層面來講,我們作為服務端開發工程師,Linux的基本使用是我們必不可少的技能。


學完Linux能幹什麼


學習完Linux操作系統課程之後,我們可以做以下幾個方面的事情:


在這裡插入圖片描述


1). 環境搭建

系統安裝 : 一般我們不會直接將Linux系統安裝在本機電腦上,而會安裝在公司的一臺專門的伺服器上。

遠程連接 : 那麼我們要想使用伺服器,一般都是通過遠程連接工具連接Linux系統進行操作。


2). 常用命令

連接上伺服器之後,我們可以通過所學習的相關指令, 來操作Linux伺服器,在Linux伺服器中可以執行如下操作:

A. 文件、目錄的基本操作(查看,刪除,創建等)

B. 文件及文件夾的拷貝、移動、重命名

C. 文件的打包、壓縮、解壓縮操作

D. 文本的編輯


3). 安裝軟體

基本的常用指令學會操作之後,我們可以在Linux伺服器中安裝我們開發常用的軟體,比如: JDK、Tomcat、MySQL的安裝及配置。


4). 項目部署

把基礎的軟體及環境安裝配置好之後,我們就可以將我們開發的項目部署在伺服器中進行運行並測試。

對於我們學習Linux操作系統時,Linux命令是基礎,也是學習Linux系統的重點內容,雖然Linux的指令有很多,但是我們常用的指令並不多,大家在學習的時候,主要掌握這部分常用的指令就可以了,對於其他的指令,以後我們用到的時候,知道怎麼查詢即可。

對於Linux的常用指令的學習,最好的學習方法就是:多敲


2. Linux簡介


主流操作系統


不同領域的主流操作系統,主要分為以下這麼幾類: 桌面操作系統、伺服器操作系統、移動設備操作系統、嵌入式操作系統。接下來,這幾個領域中,代表性的操作系統是那些?


1). 桌面操作系統


操作系統 特點
Windows 用戶數量最多
MacOS 操作體驗好,辦公人士首選
Linux 用戶數量少(桌面操作系統,Linux使用較少)

2). 伺服器操作系統


操作系統 特點
Unix 安全、穩定、付費
Linux 安全、穩定、免費、占有率高
Windows Server 付費、占有率低

3). 移動設備操作系統


操作系統 特點
Android 基於 Linux 、開源,主要用於智能手機、平板電腦和智能電視
IOS 蘋果公司開發、不開源,用於蘋果公司的產品,例如:iPhone、 iPad

4). 嵌入式操作系統


操作系統 特點
Linux 機頂盒、路由器、交換機

Linux發展歷史


在這裡插入圖片描述


時間:1991年

地點:芬蘭赫爾辛基大學

人物:Linus Torvalds(21歲)

語言:C語言、彙編語言

logo:企鵝

特點:免費、開源(源代碼開放)、多用戶(同時允許多個用戶操作同一個Linux系統)、多任務(同時允許多個任務執行)


Linux系統版本


Linux系統的版本分為兩種,分別是: 內核版 和 發行版。


1). 內核版

  • 由Linus Torvalds及其團隊開發、維護

  • 免費、開源

  • 負責控制硬體


2). 發行版

  • 基於Linux內核版進行擴展

  • 由各個Linux廠商開發、維護

  • 有收費版本和免費版本


我們使用Linux操作系統,實際上選擇的是Linux的發行版本。在linux系統中,有各種各樣的發行版本,具體如下:


發行版本 Logo 特點
Ubuntu 在這裡插入圖片描述 以桌面應用為主
RedHat 在這裡插入圖片描述 應用最廣泛、收費
CentOS 在這裡插入圖片描述 RedHat的社區版、免費
openSUSE 在這裡插入圖片描述 對個人完全免費、圖形界面華麗
Fedora 在這裡插入圖片描述 功能完備、快速更新、免費
紅旗Linux 在這裡插入圖片描述 北京中科紅旗軟體技術有限公司開發

除了上述羅列出來的發行版,還有很多Linux發行版,這裡,我們就不再一一列舉了。


3. Linux安裝


安裝方式介紹


Linux系統的安裝方式,主要包含以下兩種:


在這裡插入圖片描述


方式 概述 場景
物理機安裝 直接將操作系統安裝到伺服器硬體上 企業開發中,我們使用的伺服器基本都是採用這種方式
虛擬機安裝 通過虛擬機軟體安裝 我們在學習階段,沒有自己伺服器,而我們又需要學Linux,就可以安裝在虛擬機上

虛擬機(Virtual Machine)指通過軟體模擬的具有完整硬體系統功能、運行在完全隔離環境中的完整電腦系統。常用虛擬機軟體:

  • VMWare

  • VirtualBox

  • VMLite WorkStation

  • Qemu

  • HopeddotVOS

那麼我們就可以在課程中將Linux操作系統安裝在虛擬機中,我們課上選擇的虛擬機軟體是VMware。


安裝VMware


在這裡插入圖片描述


在我們的課程資料中提供了VMware的安裝程式。直接雙擊運行VMware安裝程式,根據提示完成安裝即可。


在這裡插入圖片描述


在這裡插入圖片描述


以上就是VMware在安裝時的每一步操作,基本上就是點擊 "下一步" 一直進行安裝。


安裝Linux


VMware虛擬機安裝完畢之後,我們就可以打開VMware,併在上面來安裝Linux操作系統。具體步驟如下:


1). 選擇創建新的虛擬機


在這裡插入圖片描述


2). 選擇"典型"配置


在這裡插入圖片描述


3). 選擇"稍後安裝操作系統(S)"


在這裡插入圖片描述


4). 選擇"Linux"操作系統,"CentOS7 64位"版本


在這裡插入圖片描述


5). 設置虛擬機的名稱及系統文件存放路徑


在這裡插入圖片描述


6). 設置磁碟容量


在這裡插入圖片描述


7). 自定義硬體信息


在這裡插入圖片描述


8). 啟動上述創建的新虛擬機


在這裡插入圖片描述


9). 選擇"Install CentOS7"


在這裡插入圖片描述


進入到Linux系統裡面, 我們發現游標無法移動到windows操作系統中了, 這個時候, 我們可以通過快捷鍵 "Ctrl+Alt" 切換游標到windows系統中。


10). 選擇語言為 "簡體中文"


在這裡插入圖片描述


11). 選擇"自動配置分區"


在這裡插入圖片描述


12). 選擇"最小安裝"


在這裡插入圖片描述


13). 設置"root"用戶密碼


在這裡插入圖片描述


安裝完畢後,點擊視窗中的藍色的 "重啟" 按鈕,重啟Linux系統。


14). 登錄系統


在這裡插入圖片描述


註意 : 在Linux系統中,在命令行中輸入密碼信息,為了保證安全性,密碼是不顯示的(看似沒有輸入,實際已經輸入了);


網卡設置


伺服器重啟完成之後,我們可以通過linux的指令 ip addr 來查詢Linux系統的IP地址,具體信息如下:


在這裡插入圖片描述


從圖中我們可以看到,並沒有獲取到linux系統的IP地址,這是為什麼呢?這是由於啟動伺服器時未載入網卡,導致IP地址初始化失敗而造成的。那麼接下來我們就需要來修改網路初始化配置,設定網卡在系統啟動時初始化。


具體操作步驟如下:

1). 修改網卡的配置項

cd /				進入根目錄

cd etc				進入etc目錄

cd sysconfig		進入sysconfig目錄

cd network-scripts	進入network-scripts

vi ifcfg-ens33		編輯ifcfg-ens33文件


進入文件後執行如下操作: 

①. 按 i 鍵 		 進入編輯狀態

②. 按↑↓鍵來移動游標, 刪除no,輸入yes 

③. 按 ESC 鍵

④. 輸入 :wq

⑤. 按 ENTER	保存退出

在這裡插入圖片描述


備註: 在上述的操作中用到了Linux中的相關指令, 目前大家不用深究, 後面會詳細講解, 目前大家只需要把這個文件的配置項ONBOOT的值有no改為yes即可。


2). 重新啟動虛擬機


在這裡插入圖片描述


重啟之後, 再次輸入root的用戶名密碼,登錄到Linux系統之後,可以通過指令 ip addr 來查看IP地址。


在這裡插入圖片描述


安裝SSH連接工具


SSH連接工具介紹

Linux已經安裝並且配置好了,接下來我們要來學習Linux的基本操作指令。而在學習之前,我們還需要做一件事情,由於我們企業開發時,Linux伺服器一般都是在遠程的機房部署的,我們要操作伺服器,不會每次都跑到遠程的機房裡面操作,而是會直接通過SSH連接工具進行連接操作。


在這裡插入圖片描述


SSH(Secure Shell),建立在應用層基礎上的安全協議。常用的SSH連接工具:


SSH工具 Logo 說明
putty 在這裡插入圖片描述 免費, 界面簡單, 功能單一
secureCRT 在這裡插入圖片描述 收費, 功能強大
xshell 在這裡插入圖片描述 收費版/免費版
finalshell 在這裡插入圖片描述 免費, 功能強大, 界面效果好 (課程中採用)

FinalShell安裝

在課程資料中,提供了finalShell的安裝包


在這裡插入圖片描述


雙擊.exe文件,然後進行正常的安裝即可。


在這裡插入圖片描述


連接Linux


1). 打開finalShell


在這裡插入圖片描述


2). 建立連接


在這裡插入圖片描述


在這裡插入圖片描述


Linux目錄結構


登錄到Linux系統之後,我們需要先來熟悉一下Linux的目錄結構。在Linux系統中,也是存在目錄的概念的,但是Linux的目錄結構和Windows的目錄結構是存在比較多的差異的 在Windows目錄下,是一個一個的盤符(C盤、D盤、E盤),目錄是歸屬於某一個盤符的。Linux系統中的目錄有以下特點:


  • A. / 是所有目錄的頂點

  • B. 目錄結構像一顆倒掛的樹

Linux 和 Windows的目錄結構對比:


在這裡插入圖片描述


Linux的目錄結構,如下:


在這裡插入圖片描述


根目錄/ 下各個目錄的作用及含義說明:


編號 目錄 含義
1 /bin 存放二進位可執行文件
2 /boot 存放系統引導時使用的各種文件
3 /dev 存放設備文件
4 /etc 存放系統配置文件
5 /home 存放系統用戶的文件
6 /lib 存放程式運行所需的共用庫和內核模塊
7 /opt 額外安裝的可選應用程式包所放置的位置
8 /root 超級用戶目錄
9 /sbin 存放二進位可執行文件,只有root用戶才能訪問
10 /tmp 存放臨時文件
11 /usr 存放系統應用程式
12 /var 存放運行時需要改變數據的文件,例如日誌文件

4. Linux常用命令


Linux命令初體驗


常用命令演示

在這一部分中,我們主要介紹幾個常用的命令,讓大家快速感受以下Linux指令的操作方式。主要包含以下幾個指令:


序號 命令 對應英文 作用
1 ls [目錄名] list 查看當前目錄下的內容
2 pwd print work directory 查看當前所在目錄
3 cd [目錄名] change directory 切換目錄
4 touch [文件名] touch 如果文件不存在,創建文件
5 mkdir [目錄名] make directory 創建目錄
6 rm [文件名] remove 刪除指定文件

接下來,我們快速的來演示一下這些常用的指令。


1). ls


在這裡插入圖片描述


指令解讀:

​ ls 查看當前目錄下的內容(文件及目錄)

​ ls / 查看指定目錄(/)下的內容


2). pwd


在這裡插入圖片描述


指令解讀:

​ pwd 查看當前所在目錄


3). cd


在這裡插入圖片描述


指令解讀:

​ cd / 切換到根目錄

​ cd /root 切換到/root目錄


4). touch


在這裡插入圖片描述


指令解讀:

​ touch 1.txt 創建文件1.txt

​ touch 2.txt 3.txt 4.txt 一次性創建文件2.txt,3.txt,3.txt


5). mkdir


在這裡插入圖片描述


指令解讀:

​ mkdir 01 創建文件夾01


6). rm


在這裡插入圖片描述


指令解讀:

​ rm 4.txt 刪除文件 (刪除文件時,需要確認,輸入y, 代表確定)


註意:


在這裡插入圖片描述


在執行Linux命令時,提示信息如果顯示為亂碼,如上圖所示。這是由於編碼問題導致,只需要修改Linux的編碼即可,命令如下:

echo 'LANG="en_US.UTF-8"' >> /etc/profile

source /etc/profile

Linux命令使用技巧

在我們使用Linux系統命令時,可以使用以下幾個技巧:

1). Tab鍵自動補全

2). 連續兩次Tab鍵,給出操作提示

3). 使用上下箭頭快速調出曾經使用過的命令

4). 使用clear命令或者Ctrl+l快捷鍵實現清屏


操作示例:

A. 執行指令的時候,對於操作的文件/目錄,按一下Tab會自動補全:


在這裡插入圖片描述


B. 如果上述以 "1." 開頭的文件有多個,可以按兩下Tab鍵,給出操作提示:


在這裡插入圖片描述


C. 使用clear命令或者Ctrl+l快捷鍵實現清屏:


在這裡插入圖片描述


清屏之後,界面就變得乾凈了:


在這裡插入圖片描述


Linux命令格式

command [-options] [parameter]
	
說明: 
	command: 	 命令名
	[-options]:  選項,可用來對命令進行控制,也可以省略
	[parameter]: 傳給命令的參數,可以是零個、一個或者多個
	
註意: 
	[] 	 代表可選
	命令名、選項、參數之間有空格進行分隔

操作示例:


在這裡插入圖片描述


文件目錄操作命令


ls

作用: 顯示指定目錄下的內容
語法: ls [-al] [dir]
說明: 
	-a 顯示所有文件及目錄 (. 開頭的隱藏文件也會列出)
	-l 除文件名稱外,同時將文件型態(d表示目錄,-表示文件)、許可權、擁有者、文件大小等信息詳細列出
	
註意: 
	由於我們使用ls命令時經常需要加入-l選項,所以Linux為ls -l命令提供了一種簡寫方式,即ll
	
常見用法: 
	ls -al 	查看當前目錄的所有文件及目錄詳細信息
	ls -al /etc   查看/etc目錄下所有文件及目錄詳細信息
	ll  	查看當前目錄文件及目錄的詳細信息 

操作示例:


在這裡插入圖片描述


在這裡插入圖片描述


在這裡插入圖片描述


在這裡插入圖片描述


cd

作用: 用於切換當前工作目錄,即進入指定目錄
語法: cd [dirName]
	
特殊說明: 
	~	表示用戶的home目錄
	. 	表示目前所在的目錄
	.. 	表示目前目錄位置的上級目錄
	
舉例: 
	cd 	..		切換到當前目錄的上級目錄
	cd 	~		切換到用戶的home目錄
	cd 	/usr/local	切換到/usr/local目錄

備註:

​ 用戶的home目錄

​ root用戶 /root

​ 其他用戶 /home/xxx


操作示例:


在這裡插入圖片描述

在這裡插入圖片描述

cd .. 切換到當前目錄位置的上級目錄; 可以通過 cd ../.. 來切換到上級目錄的上級目錄。


cat

作用: 用於顯示文件內容

語法: cat [-n] fileName

說明:
	-n: 由1開始對所有輸出的行數編號

舉例:
	cat /etc/profile		查看/etc目錄下的profile文件內容

操作演示:


在這裡插入圖片描述


cat 指令會一次性查看文件的所有內容,如果文件內容比較多,這個時候查看起來就不是很方便了,這個時候我們可以通過一個新的指令more。


more

作用: 以分頁的形式顯示文件內容
語法: more fileName

操作說明:
    回車鍵 	向下滾動一行
    空格鍵 	向下滾動一屏
    b 		返回上一屏
    q或者Ctrl+C	退出more
	
舉例:
	more /etc/profile		以分頁方式顯示/etc目錄下的profile文件內容

操作示例:


在這裡插入圖片描述


當我們在查看一些比較大的文件時,我們可能需要經常查詢文件尾部的數據信息,那這個時候如果文件很大,我們要一直向下翻頁,直到最後一頁,去看最新添加的數據,這種方式就比較繁瑣了,此時,我們可以藉助於tail指令。


tail

作用: 查看文件末尾的內容
語法: tail [-f] fileName

說明:
	-f : 動態讀取文件末尾內容並顯示,通常用於日誌文件的內容輸出
	
舉例: 
tail /etc/profile		顯示/etc目錄下的profile文件末尾10行的內容
tail -20 /etc/profile	顯示/etc目錄下的profile文件末尾20行的內容
tail -f /wenjie/my.log	動態讀取/wenjie目錄下的my.log文件末尾內容並顯示

操作示例:

A. 預設查詢文件尾部10行記錄


在這裡插入圖片描述


B. 可以通過指定參數設置查詢尾部指定行數的數據


在這裡插入圖片描述


C. 動態讀取文件尾部的數據


在這裡插入圖片描述


在視窗1中執行指令 tail -f 1.txt 動態查看文件尾部的數據。然後在頂部的標簽中右鍵選擇 "複製標簽",打開新的視窗2 , 此時再新打開的視窗2中執行指令 echo 1 >> 1.txt , 往1.txt文件尾部追加內容,然後我們就可以在視窗1中看到最新的文件尾部的數據。

如果我們不想查看文件尾部的數據了,可以直接使用快捷鍵 Ctrl+C , 結束當前進程。


mkdir

作用: 創建目錄

語法: mkdir [-p] dirName

說明: 
	-p: 確保目錄名稱存在,不存在的就創建一個。通過此選項,可以實現多層目錄同時創建

舉例: 
    mkdir wenjie  在當前目錄下,建立一個名為wenjie的子目錄
    mkdir -p wenjie/test   在工作目錄下的wenjie目錄中建立一個名為test的子目錄,若wenjie目錄不存在,則建立一個

操作演示:


在這裡插入圖片描述


rmdir

作用: 刪除空目錄


語法: rmdir [-p] dirName

說明:
	-p: 當子目錄被刪除後使父目錄為空目錄的話,則一併刪除

舉例:
    rmdir wenjie   刪除名為wenjie的空目錄
    rmdir -p wenjie/test   刪除wenjie目錄中名為test的子目錄,若test目錄刪除後wenjie目錄變為空目錄,則也被刪除
    rmdir wenjie*   刪除名稱以wenjie開始的空目錄

操作演示:

A. 刪除空目錄


在這裡插入圖片描述


B. 刪除非空目錄


在這裡插入圖片描述


C. 使用*通配符刪除目錄


在這裡插入圖片描述


*: 是一個通配符,代表任意字元;

rmdir wenjie* : 刪除以wenjie開頭的目錄

rmdir *wenjie : 刪除以wenjie結尾的目錄


rm

作用: 刪除文件或者目錄

語法: rm [-rf] name

說明: 
    -r: 將目錄及目錄中所有文件(目錄)逐一刪除,即遞歸刪除
    -f: 無需確認,直接刪除
	
舉例: 
    rm -r wenjie/     刪除名為wenjie的目錄和目錄中所有文件,刪除前需確認
    rm -rf wenjie/    無需確認,直接刪除名為wenjie的目錄和目錄中所有文件
    rm -f hello.txt   無需確認,直接刪除hello.txt文件


操作示例:


在這裡插入圖片描述


註意: 對於 rm -rf xxx 這樣的指令,在執行的時候,一定要慎重,確認無誤後再進行刪除,避免誤刪。


拷貝移動命令


cp

作用: 用於複製文件或目錄

語法: cp [-r] source dest

說明: 
	-r: 如果複製的是目錄需要使用此選項,此時將複製該目錄下所有的子目錄和文件

舉例: 
    cp hello.txt wenjie/            將hello.txt複製到wenjie目錄中
    cp hello.txt ./hi.txt           將hello.txt複製到當前目錄,並改名為hi.txt
    cp -r wenjie/ ./execise/    	將wenjie目錄和目錄下所有文件複製到execise目錄下
    cp -r wenjie/* ./execise/ 	 	將wenjie目錄下所有文件複製到execise目錄下

操作示例:


在這裡插入圖片描述


在這裡插入圖片描述


在這裡插入圖片描述


如果拷貝的內容是目錄,需要加上參數 -r


mv

作用: 為文件或目錄改名、或將文件或目錄移動到其它位置

語法: mv source dest

舉例: 
    mv hello.txt hi.txt                 將hello.txt改名為hi.txt
    mv hi.txt execise/                  將文件hi.txt移動到execise目錄中
    mv hi.txt execise/hello.txt   		將hi.txt移動到execise目錄中,並改名為hello.txt
    mv wenjie/ execise/                 如果execise目錄不存在,將wenjie目錄改名為execise
    mv wenjie/ execise/                 如果execise目錄存在,將wenjie目錄移動到execise目錄中

操作示例:

mv 命令既能夠改名,又可以移動,具體是改名還是移動,系統會根據我們輸入的參數進行判定(如果第二個參數dest是一個已存在的目錄,將執行移動操作,其他情況都是改名)


在這裡插入圖片描述


打包壓縮命令


作用: 對文件進行打包、解包、壓縮、解壓
語法: tar  [-zcxvf]  fileName  [files]
    包文件尾碼為.tar表示只是完成了打包,並沒有壓縮
    包文件尾碼為.tar.gz表示打包的同時還進行了壓縮

說明:
    -z: z代表的是gzip,通過gzip命令處理文件,gzip可以對文件壓縮或者解壓
    -c: c代表的是create,即創建新的包文件
    -x: x代表的是extract,實現從包文件中還原文件
    -v: v代表的是verbose,顯示命令的執行過程
    -f: f代表的是file,用於指定包文件的名稱

舉例:
    打包
        tar -cvf hello.tar ./*		  		將當前目錄下所有文件打包,打包後的文件名為hello.tar
        tar -zcvf hello.tar.gz ./*		  	將當前目錄下所有文件打包並壓縮,打包後的文件名為hello.tar.gz
		
    解包
        tar -xvf hello.tar		  			將hello.tar文件進行解包,並將解包後的文件放在當前目錄
        tar -zxvf hello.tar.gz		  		將hello.tar.gz文件進行解壓,並將解壓後的文件放在當前目錄
        tar -zxvf hello.tar.gz -C /usr/local     將hello.tar.gz文件進行解壓,並將解壓後的文件放在/usr/local目錄


操作示例:

A. 打包


在這裡插入圖片描述


B. 打包並壓縮


在這裡插入圖片描述


C. 解包


在這裡插入圖片描述


D. 解壓


在這裡插入圖片描述


解壓到指定目錄,需要加上參數 -C


在這裡插入圖片描述


文本編輯命令


文本編輯的命令,主要包含兩個: vi 和 vim,兩個命令的用法類似,我們課程中主要講解vim的使用。


vi&vim介紹

作用: vi命令是Linux系統提供的一個文本編輯工具,可以對文件內容進行編輯,類似於Windows中的記事本

語法: vi fileName

說明:

1). vim是從vi發展來的一個功能更加強大的文本編輯工具,編輯文件時可以對文本內容進行著色,方便我們對文
件進行編輯處理,所以實際工作中vim更加常用。

2). 要使用vim命令,需要我們自己完成安裝。可以使用下麵的命令來完成安裝:yum install vim


vim安裝

命令: yum install vim


在這裡插入圖片描述


安裝過程中,會有確認提示,此時輸入 y,然後回車,繼續安裝:


在這裡插入圖片描述


在這裡插入圖片描述


vim使用

作用: 對文件內容進行編輯,vim其實就是一個文本編輯器

語法: vim fileName

說明:

1). 在使用vim命令編輯文件時,如果指定的文件存在則直接打開此文件。如果指定的文件不存在則新建文件。

2). vim在進行文本編輯時共分為三種模式,分別是 命令模式(Command mode),插入模式(Insert mode)和底行模式(Last line mode)。這三種模式之間可以相互切換。我們在使用vim時一定要註意我們當前所處的是哪種模式。

三種模式:

命令模式

  A. 命令模式下可以查看文件內容、移動游標(上下左右箭頭、gg、G)

  B. 通過vim命令打開文件後,預設進入命令模式

  C. 另外兩種模式需要首先進入命令模式,才能進入彼此
  
  | 命令模式指令 | 含義                              |
  | ------------ | --------------------------------- |
  | gg           | 定位到文本內容的第一行            |
  | G            | 定位到文本內容的最後一行          |
  | dd           | 刪除游標所在行的數據              |
  | ndd          | 刪除當前游標所在行及之後的n行數據 |
  | u            | 撤銷操作                          |
  | shift+zz     | 保存並退出                        |
  | i 或 a 或 o  | 進入插入模式                      |
  • 插入模式

    A. 插入模式下可以對文件內容進行編輯

    B. 在命令模式下按下[i,a,o]任意一個,可以進入插入模式。進入插入模式後,下方會出現【insert】字樣

    C. 在插入模式下按下ESC鍵,回到命令模式


  • 底行模式

    A. 底行模式下可以通過命令對文件內容進行查找、顯示行號、退出等操作

    B. 在命令模式下按下[:,/]任意一個,可以進入底行模式

    C. 通過/方式進入底行模式後,可以對文件內容進行查找

    D. 通過:方式進入底行模式後,可以輸入wq(保存並退出)、q!(不保存退出)、set nu(顯示行號)


  | 底行模式命令 | 含義                                 |
  | ------------ | ------------------------------------ |
  | :wq          | 保存並退出                           |
  | :q!          | 不保存退出                           |
  | :set nu      | 顯示行號                             |
  | :set nonu    | 取消行號顯示                         |
  | :n           | 定位到第n行, 如 :10 就是定位到第10行 |

在這裡插入圖片描述


操作示例:


在這裡插入圖片描述


查找命令


find

作用: 在指定目錄下查找文件

語法: find dirName -option fileName

舉例:
    find  .  –name "*.java"			在當前目錄及其子目錄下查找.java結尾文件
    find  /wenjie  -name "*.java"	在/wenjie目錄及其子目錄下查找.java結尾的文件

操作示例:


在這裡插入圖片描述


grep

作用: 從指定文件中查找指定的文本內容

語法: grep word fileName

舉例: 
    grep Hello HelloWorld.java	查找HelloWorld.java文件中出現的Hello字元串的位置
    grep hello *.java			查找當前目錄中所有.java結尾的文件中包含hello字元串的位置

操作示例:


在這裡插入圖片描述


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • Github / Gitee QQ群(1群) : 813100564 / QQ群(2群) : 579033769 視頻教學 介紹 MiniWord .NET Word模板引擎,藉由Word模板和數據簡單、快速生成文件。 Getting Started 安裝 nuget link : https:// ...
  • 軟體安裝 在Linux系統中,安裝軟體的方式主要有四種,這四種安裝方式的特點如下: | 安裝方式 | 特點 | | | | | 二進位發佈包安裝 | 軟體已經針對具體平臺編譯打包發佈,只要解壓,修改配置即可 | | rpm安裝 | 軟體已經按照redhat的包管理規範進行打包,使用rpm命令進行安裝 ...
  • 1、簡介 這裡先介紹下軟體定時器和硬體定時器的區別 硬體定時器: CPU內部自帶的定時器模塊,通過初始化、配置可以實現定時,定時時間到以後就會執行相應的定時器中斷處理函數。硬體定時器一般都帶有其它功能,比如PWM輸出、輸入捕獲等等功能。但是缺點是硬體定時器數量少!! 軟體定時器: 軟體定時器允許設置 ...
  • 一、關機重啟命令 shutdown -h now 立刻進行關機 halt 關機 reboot 重啟電腦 sync 把記憶體數據同步到磁碟 ==關機重啟命令均需要root許可權執行== 二、用戶登錄和註銷命令 su username: 切換用戶,不帶任何參數會進入root;低許可權用戶切換高許可權用戶需要輸入 ...
  • 一、本地數據集上傳到到數據倉庫Hive 1、 實驗數據集的下載 1. 將user.zip下載到指定目錄 2.給hadoop用戶賦予針對bigdatacase目錄的各種操作許可權 3.創建一個dataset目錄用於保存數據集 4.解壓縮user.zip文件 5.可以看到dataset目錄下由兩個文件 6 ...
  • 超級跳躍日:Super Leap Day是一款非常有趣的橫版跑酷冒險游戲,游戲操作簡單,只需要按下單個按鈕即可連續跳躍,沿途還有很多獎勵和物品等待你來收集,並且每天都有新的關卡等你來挑戰,喜歡的朋友快來體驗吧~ 詳情:超級跳躍日Super Leap Day for mac(動作冒險游戲) 游戲介紹 ...
  • 如果轉載, 請註明出處 https://www.cnblogs.com/milton/p/16730512.html Ubuntu22.40下VNC和遠程桌面的區別 使用遠程桌面時, 用戶必須在host上登入桌面環境. 可以是鎖屏或非鎖屏, 但是必須要有一個用戶桌面會話存在. 使用VNC時, hos ...
  • 摘要:面向教育模式的轉變,南京功夫豆攜手華為雲IoT,給印表機配上與雲端互通的智能盒子,開啟雲端列印新模式 本文分享自華為雲社區《一臺“厲害”的印表機:雲+IoT,開啟雲端列印新模式》,作者:華為IoT雲服務 。 後疫情時代 生活的各方面都在往線上模式延展 而在不被人註意的角落裡 印表機也在悄悄地提 ...
一周排行
    -Advertisement-
    Play Games
  • 概述:在C#中,++i和i++都是自增運算符,其中++i先增加值再返回,而i++先返回值再增加。應用場景根據需求選擇,首碼適合先增後用,尾碼適合先用後增。詳細示例提供清晰的代碼演示這兩者的操作時機和實際應用。 在C#中,++i 和 i++ 都是自增運算符,但它們在操作上有細微的差異,主要體現在操作的 ...
  • 上次發佈了:Taurus.MVC 性能壓力測試(ap 壓測 和 linux 下wrk 壓測):.NET Core 版本,今天計劃準備壓測一下 .NET 版本,來測試並記錄一下 Taurus.MVC 框架在 .NET 版本的性能,以便後續持續優化改進。 為了方便對比,本文章的電腦環境和測試思路,儘量和... ...
  • .NET WebAPI作為一種構建RESTful服務的強大工具,為開發者提供了便捷的方式來定義、處理HTTP請求並返迴響應。在設計API介面時,正確地接收和解析客戶端發送的數據至關重要。.NET WebAPI提供了一系列特性,如[FromRoute]、[FromQuery]和[FromBody],用 ...
  • 原因:我之所以想做這個項目,是因為在之前查找關於C#/WPF相關資料時,我發現講解圖像濾鏡的資源非常稀缺。此外,我註意到許多現有的開源庫主要基於CPU進行圖像渲染。這種方式在處理大量圖像時,會導致CPU的渲染負擔過重。因此,我將在下文中介紹如何通過GPU渲染來有效實現圖像的各種濾鏡效果。 生成的效果 ...
  • 引言 上一章我們介紹了在xUnit單元測試中用xUnit.DependencyInject來使用依賴註入,上一章我們的Sample.Repository倉儲層有一個批量註入的介面沒有做單元測試,今天用這個示例來演示一下如何用Bogus創建模擬數據 ,和 EFCore 的種子數據生成 Bogus 的優 ...
  • 一、前言 在自己的項目中,涉及到實時心率曲線的繪製,項目上的曲線繪製,一般很難找到能直接用的第三方庫,而且有些還是定製化的功能,所以還是自己繪製比較方便。很多人一聽到自己畫就害怕,感覺很難,今天就分享一個完整的實時心率數據繪製心率曲線圖的例子;之前的博客也分享給DrawingVisual繪製曲線的方 ...
  • 如果你在自定義的 Main 方法中直接使用 App 類並啟動應用程式,但發現 App.xaml 中定義的資源沒有被正確載入,那麼問題可能在於如何正確配置 App.xaml 與你的 App 類的交互。 確保 App.xaml 文件中的 x:Class 屬性正確指向你的 App 類。這樣,當你創建 Ap ...
  • 一:背景 1. 講故事 上個月有個朋友在微信上找到我,說他們的軟體在客戶那邊隔幾天就要崩潰一次,一直都沒有找到原因,讓我幫忙看下怎麼回事,確實工控類的軟體環境複雜難搞,朋友手上有一個崩潰的dump,剛好丟給我來分析一下。 二:WinDbg分析 1. 程式為什麼會崩潰 windbg 有一個厲害之處在於 ...
  • 前言 .NET生態中有許多依賴註入容器。在大多數情況下,微軟提供的內置容器在易用性和性能方面都非常優秀。外加ASP.NET Core預設使用內置容器,使用很方便。 但是筆者在使用中一直有一個頭疼的問題:服務工廠無法提供請求的服務類型相關的信息。這在一般情況下並沒有影響,但是內置容器支持註冊開放泛型服 ...
  • 一、前言 在項目開發過程中,DataGrid是經常使用到的一個數據展示控制項,而通常表格的最後一列是作為操作列存在,比如會有編輯、刪除等功能按鈕。但WPF的原始DataGrid中,預設只支持固定左側列,這跟大家習慣性操作列放最後不符,今天就來介紹一種簡單的方式實現固定右側列。(這裡的實現方式參考的大佬 ...