linux命令(附帶安裝)

啃兔子的大萝卜發表於2024-05-16

適用於不同場景的命令

其他

以下是對目錄的解釋:

  • /bin : bin是Binary的縮寫,這個目錄存放著最經常使用的命令。
  • /boot:這裡存放的是啟動Linux時使用的一些核心檔案,包括一些連線檔案以及映象檔案。
  • /dev : dev是Device(裝置)的縮寫,存放的是Linux的外部裝置,在Linux中訪問裝置的方式和訪問檔案的方式是相同的。(如隨身碟)
  • /etc:這個目錄用來存放所有的系統管理所需要的配置檔案和子目錄。
  • /home:使用者的主目錄,在Linux中,每個使用者都有一個自己的目錄,一般該目錄名是以使用者的賬號命名的。
  • /lib:這個目錄裡存放著系統最基本的動態連線共享庫,其作用類似於Windows裡的DLL檔案。
  • /lost+found:這個目錄一般情況下是空的,當系統非法關機後,這裡就存放了一些檔案。
  • /media:linux系統會自動識別一些裝置,例如隨身碟、光碟機等等,當識別後,linux會把識別的裝置掛載到這個目錄下。·/mnt:系統提供該目錄是為了讓使用者臨時掛載別的檔案系統的,我們可以將光碟機掛載在/mnt/上,然後進入該目錄就可以檢視光碟機裡的內容了。
  • /opt:這是給主機額外安裝軟體所擺放的目錄。比如你安裝一個ORACLE資料庫則就可以放到這個目錄下。預設是空的。
  • /proc:這個目錄是一個虛擬的目錄,它是系統記憶體的對映,我們可以透過直接訪問這個目錄來獲取系統資訊。
  • /root:該目錄為系統管理員,也稱作超級許可權者的使用者主目錄。
  • /sbin:s就是Super User的意思,這裡存放的是系統管理員使用的系統管理程式。
  • /srv:該目錄存放一些服務啟動之後需要提取的資料。
  • /sys:這是linux2.6核心的一個很大的變化。該目錄下安裝了2.6核心中新出現的一個檔案系統 svsfs 。
  • /tmp:這個目錄是用來存放一些臨時檔案的。
  • /usr:這是一個非常重要的目錄,使用者的很多應用程式和檔案都放在這個目錄下,類似於windows下的program files目錄。
  • /usr/bin :系統使用者使用的應用程式。最基本命令

最基本命令

ls / #檢視當前目錄所有檔案 /是當前目錄的意思
mkdir #建立目錄
cd /home #進入home目錄,/是絕對路徑 後面是哪裡就進入哪裡
mv music entertainment #移動music到entertainment目錄下
touch #建立檔案
echo "需要輸入的字元" >> 檔名 #往指定檔案裡面輸入字元

開關機

sync # 將資料由記憶體同步到硬碟中。
shutdown #關機指令,你可以man shutdown 來看一下幫助文件。例如你可以執行如下命令關機:
shutdown -h 10 # 這個命令告訴大家,計算機將在10分鐘後關機
shutdown -h now # 立馬關機
shutdown -h 20:25 #系統會在今天20:25關機
shutdown -h +10 # 十分鐘後關機
shutdown -r now #系統立馬重啟
shutdown -r +10 # 系統十分鐘後重啟
reboot #就是重啟,等同於 shutdown -r now
halt #關閉系統,等同於shutdown -h now 和 poweroff

目錄相關命令

.. #上一級目錄
./ #當前目錄
cd #切換目錄命令
cd..


ls #列出目錄
 -a #all 檢視全部檔案,包括隱藏
 -l #引數 列出所有檔案資訊 屬性許可權等
 
cd 目錄名(絕對路徑都是以/開頭,相對路徑,對於當前目錄該如何尋找 ..../)
cd ../user   #../是相對路徑 以相對路徑進入user
cd /user/axu #絕對路徑跳轉
cd ~         #回到當前的使用者命令

mkdir 目錄名  #建立目錄
mkdir -p     #遞迴建立目錄 


rm和rmdr

rmdir 目錄   #刪除目錄 但是如果目錄下有檔案就不能刪除
  -p        #加了-p就可以刪除了

cp          #複製檔案或者目錄
cd 檔名 複製後的地址


rm          #移除檔案或者目錄
  -f        #忽略不存在的檔案,不會出現警告,強制刪除!
  -r        #遞迴刪除目錄
  -i        #互動,刪除詢問是否刪除
  
  
mv            #移動檔案或根目錄 或者重新命名
mv 檔案 地址   #移動
mv 檔案 檔名 #重新命名檔案
  -f         #強制
  -u         #只替換已經更新過的檔案
  

目錄相關

例項中,boot檔案的第一個屬性用"d"代表。"d"在Linux中代表該檔案是一個目錄檔案。

在Linux中第一個字元代表這個檔案是目錄、檔案或連結檔案等等

  • 當為[d]則是目錄

  • 當為[-]則是檔案;

  • 若是[l]則表示為連結文件(link file);

  • 若是[b]則表示為裝置檔案裡面的可供儲存的介面裝置(可隨機存取裝置);

  • 若是[c]則表示為裝置檔案裡面的串列埠裝置,例如鍵盤、滑鼠(一次性讀取裝置)。

接下來的字元中,以三個為一組,且均『rwx』的三個引數的組合。其中,[r]代表可讀(read)、[w]代表可寫(write)、[x]代表可執行(execute)。要注意的是,這三個許可權的位置不會改變,如果沒有許可權,就會出現減號[-]而已。每個檔案的屬性由左邊第一部分的10個字元來確定

修改檔案屬性

  1. chgrp:更改檔案屬組

    chgrp[-R]屬組名 檔名
    

    -R :遞迴更改檔案屬組,就是在更改某個目錄檔案的屬組時,如果加上-R的引數,那麼該目錄下的所有檔案的屬組都會更改。

  2. chown:更改檔案屬主,也可以同時更改檔案屬組

    chown [-R] 屬主名 檔名
    chown [-R] 屬主名:屬組名 檔名
    
  3. chmod:更改檔案9個屬性(必須要掌握)
    當沒有許可權操作檔案的時候可以改一下

    chmod [-R] xyz 檔案或目錄
    

    Linux檔案屬性有兩種設定方法,一種是數字,一種是符號。

    Linux檔案的基本許可權就有九個,分別是owner/group/others三種身份各有自己的read/write/execute許可權

    如:[-rwxrwxrwx],這九個許可權是三個三個一組的!其中,我們可以使用數字來代表各個許可權,各許可權的分數對照表如下:

    r:4 w:2 x:1
    

檔案內容檢視

Linux系統中使用以下命令來檢視檔案的內容

  • cat 由第一行開始顯示檔案內容
  • tac 從最後一行開始顯示,可以看出 tac 是 cat 的倒著寫!
  • nl顯示的時候,順道輸出行號!
  • more 一頁一頁的顯示檔案內容
  • less 與 more 類似,但是比 more 更好的是,他可以往前翻頁!
  • head 只看頭幾行
  • tail 只看尾巴幾行I

使用 man [命令]來檢視各個命令的使用文件,如 :man cp。

less 與 more 類似,但是比 more 更好的是,他可以往前翻頁!(空格下翻頁,pageDown,pageUp鍵代表翻動頁面!退
出q命令,查詢字串/要査詢的字元向下査詢,向上査詢使用?要查詢的字串,n 繼續搜尋下一個,N是向上尋找

硬連結和軟連結

Linux的連結分為兩種:硬連結、軟連結

硬連結:A-B,假設B是A的硬連結,那麼他們兩個指向了同一個檔案,允許一個檔案擁有多個路徑,使用者可以透過這種機制建立硬連結到一些重要檔案上,防止誤刪。類似複製貼上

軟連結:類似Window下的快捷方式,刪除的原始檔,快捷方式也訪問不了!

ln 檔案1 檔案2 #硬連結檔案1就是已經存在的檔案 檔案2就是複製後的檔名
ln -s 檔案1 檔案2 #軟連結檔案1就是已經存在的檔案 檔案2就是複製後的檔名

Vim 編輯器

什麼是Vim編輯器

vim透過一些外掛可以實現和IDE一樣的功能

Vim是從vi發展出來的一個文字編輯器。程式碼補完、編譯及錯誤跳轉等方便程式設計的功能特別豐富,在程式設計師中被廣泛使用。Linux中,必須要會使用Vim(檢視內容,編輯內容,儲存內容)

簡單的來說,vi是老式的字處理器,不過功能已經很齊全了,但是還是有可以進步的地方。

vim 則可以說是程式開發者的一項很好用的工具。

三種使用模式

基本上vi/vim共分為三種模式,分別是命令模式(Command mode),輸入模式(insert mode)和底線命令模式(Last line mode)。

命令模式:

使用者剛剛啟動 vi/vim,便進入了命令模式,
此狀態下敲擊鍵盤動作會被Vim識別為命令,而非輸入字元。比如我們此時按下ì,並不會輸入一個字元,ì被當作了一個命令。以下是常用的幾個命令:

  • i切換到輸入模式,以輸入字元。
  • x刪除當前游標所在處的字元。
  • :切換到底線命令模式,以在最底一行輸入命令。

若想要編輯文字:啟動Vim,進入了命令模式,按下i,切換到輸入模式。

命令模式只有一些最基本的命令,因此仍要依靠底線命令模式輸入更多命令。

輸入模式:

在命令模式下按下i就進入了輸入模式
在輸入模式中,可以使用以下按鍵:

  • 字元按鍵以及Shift組合,輸入字元

  • ENTER,Enter鍵,換行

  • BACK SPACE,退格鍵,刪除游標前一個字元

  • 方向鍵,在文字中移動游標

  • HOME/END,移動游標到行首/行尾。

  • Page Up/Page Down,上/下翻頁

  • Insert,切換游標為輸入/替換模式游標將變成豎線/下劃線

  • ESC,退出輸入模式,切換到命令模式

底線命令模式

在命令模式下按下:(英文冒號)就進入了底線命令模式。游標就移動到了最底下,就可以在這裡輸入一些底線命令了!

底線命令模式可以輸入單個或多個字元的命令,可用的命令非常多。

在底線命令模式中,基本的命令有

  • q退出程式
  • w 儲存檔案

按ESC鍵可隨時退出 底線命令模式。

使用者賬號相關

使用者賬號的管理

使用者賬號的管理工作主要涉及到使用者賬號的新增、修改和刪除新增使用者賬號就是在系統中建立一個新賬號,然後為新賬號分配使用者號、使用者組、主目錄和登入Shell等資源。屬主,屬組

建立使用者

useradd 命令 新增使用者

useradd -選項 使用者名稱

​ -m:自動建立這個使用者的主目錄 如果在home建立了一個axu的使用者,那麼home就有axu這個檔案了/home/axu

​ -G:給使用者分配組

Linux中一切皆檔案,這裡的新增使用者說白了就是往某一個檔案中寫入使用者的資訊了!/etc/passwd 這個檔案下就有所有的使用者資訊

passwd 資訊如下

​ 使用者名稱:口令(登入密碼,我們不可見):使用者標識號:組標識號:註釋性描述:主目錄:登入she11

刪除使用者

userdel
userdel -r axu 刪除使用者的時候將他的目錄頁一併刪掉!

修改使用者

usermod

相關命令自己查

切換使用者

相關命令自己查

使用者組相關

建立使用者組

groupadd 使用者組名    #建立的時候會有一個自增的ID 同樣的在/etc/passwd下面有
	-g 110         #建立一個ID是110的使用者

刪除使用者組

groupdel

修改使用者組

groupmod -g 修改後的ID -n 修改後的名字 原使用者組的名字 #修改使用者組的許可權資訊和名字 

磁碟管理

df  #顯示資訊
 -h #顯示資訊變成了M
du  #顯示空間具體使用情況
du -sm /* #檢查根目錄下每個目錄所佔用的容量
mount #掛載
	mount /dev/axu /mnt/axu # 將外部裝置axu掛載到 mnt 目錄下,來實現訪問  mnt就是一般掛載檔案的位置
umount -f [怪哉位置] #強制解除安裝 

程序管理

  1. 每一個程序,都會有一個父程序

  2. 程序可以有兩種存在方式:前臺 後臺執行

  3. 一般的話服務都是後臺執行的,基本的程式都是前臺執行的

命令

ps #檢視當前系統中正在執行的各種程序的資訊
pS -XX :
 -a #顯示當前終端執行的所有的程序資訊
 -u #以使用者的資訊顯示程序
 -x #顯示後臺執行程序的引數

|    #Linux這個叫做管道符 A|B 過濾和B相關的程序
grep #查詢檔案中符合條件的字串

ps -aux|grep mysql #檢視所有和mysql相關程序
ps -aux|grep redis #檢視所有和resis相關程序


ps -ef  #檢視到父程序的資訊
ps -ef|grep redis #看resis和他的父程序的相關程序

#專門檢視父程序一般用目錄樹
pstree -pu
	-p  #顯示父id
	-u  #顯示使用者組

# 結束程序:殺掉程序,等價於window結束任務 (比如結束java程序)
kill -9 程序的id 

防火牆設定

#檢視firewa11服務狀態
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=8080/tcp --permanent
重啟防火牆:systemctl restart firewa1ld.service

#命令含義
--zone #作用域
--add-port=80/tcp #新增埠 格式為	埠/通訊協議
--permanent 	  #永久生效,沒有此引數重啟後失效


環境安裝

安裝軟體一般有三種方式:rpm,解壓縮,yum線上安裝

rgm(以JDK為例)

  1. 下載JDK rpm。去oralce 官網下載即可

  2. 安裝java環境

    檢測環境相關命令和安裝相關命令

    java -version #檢測當前系統是否存在java環境 如果有的話就需要解除安裝
    # 解除安裝相關命令
     rpm -qa|grep jdk # 檢測JDK版本資訊
     rpm -e --nodeps 透過上面命令查出來的jdk版本資訊 # 強制刪除
    
    # 安裝命令
    rpm -ivh rpm包 #安裝
    
    # 配置環境變數 具體檔案地址 /etc/profile (因為是具體檔案所以肯定是透過vim開啟)
    
    JAVA_HOME=/usr/java/jdk1.8.0_202-amd64
    CLASSPATH=%JAVA_HOME%/lib;%HAVA_HOME%/jre/lib
    PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin
    export PATH CLASSPATH JAVA_HOME
    (只是比winds多一個export)
    
    

    域名解析後,如果埠是80-http 或者 443-https 可以直接訪問,,如果是 9000 8080,就需要透過Apcahe或者Nginx做一下反向
    代理即可,配置檔案即可

相關文章