信安学习-day33
Linux 常用命令
一、Linux命令概述
1.Shell
-
linux系統中運行的一種特殊程序
-
在用戶和內核之間充當“翻譯官”
-
用戶登錄linux系統時,自動加載一個shell程序
-
bash是CentOS系統中默認使用的shell程序
-
文件位于/bin/bash
-
2.Linux命令的分類
-
內部命令
-
集成于 Shell 解釋器程序內部的一些特殊指令,也稱為內建(Built-in)指令
-
屬于 Shell 的一部分
-
沒有單獨對應的系統文件
-
自動載入內存,可以直接使用
-
-
外部命令
-
Linux系統中能夠完成特定功能的腳本文件或二進制程序
-
屬于 Shell 解釋器程序之外的命令
-
每個外部命令對應了系統中的一個文件
-
必須知道其對應的文件位置,由 Shell 加載后才能執行
-
-
注意:
-
Linux系統將存放外部命令、程序的目錄默認添加到 “搜索路徑”中當使用位于這些目錄中的外部命令時,用戶不需要指定具體的位置
-
3.Linux 命令行的格式
-
通用的命令行使用格式
-
命令字
-
是整條命令中最關鍵的一部分
-
唯一確定一條命令
-
-
選項
-
短格式選項:使用“-”符號引導(結構簡單,輸入快捷)
-
多個單字符選項可以組合在一起使用
-
-
長格式選項:使用“--”符號引導 (意義明確,容易記憶)
-
-
參數 rm
-
命令字的處理對象
-
可以是文件名、目錄(路徑)名或用戶名等內容
-
個數可以是零到多個
-
-
-
注意:
-
Linux命令環境中,對英文字符的處理是區分大小寫的
-
一些 Linux命令字對于同一功能會同時提供長、短兩種格式的選項
-
兩種格式可以混用
-
在實際使用Linux命令行的過程中,“選項”和“參數”的稱謂經常混淆,甚至前后順序也允許顛倒,但一般不會影響到命令的執行效果
-
4.編輯 Linux 命令行
-
編輯 Linux 命令行的輔助操作
-
Tab 鍵
-
反斜杠“\”
-
Ctrl+u 快捷鍵
-
Ctrl+k 快捷鍵
-
Ctrl+l 快捷鍵 --清屏
-
Ctrl+c 快捷鍵 --中止程序
-
Ctrl+ a --光標到命令最前面
-
Ctrl+e --光標到命令最后面
-
Ctrl+z --將服務在后臺掛起
-
5.獲得命令幫助的方法
-
問題
-
如何能快速、正確使用命令完成操作?
-
-
方法
-
使用help 命令 /查看內部命令
-
使用“--help”選項 /查看外部命令
-
使用man 手冊頁
-
二、目錄和文件基本操作
-
常用的基本操作
-
查看及切換目錄
-
創建目錄和文件
-
復制、刪除移動目錄和文件
-
查找目錄和文件
-
1.查看及切換目錄
①.查看當前的工作目錄-pwd
-
顯示用戶當前所在的工作目錄位置
-
[root@localhost ~]# pwd
/root
-
②.切換工作目錄-cd
-
將用戶的工作目錄更改到其他位置
-
cd 目標位置--切換到目標位置
-
cd --若不指定目標位置,切換到當前用戶的宿主目錄
-
cd - --切換到上一次執行cd命令之前所在的目錄
-
cd . --當前目錄
-
cd .. --上級目錄
-
③.絕對路徑與相對路徑
-
絕對路徑:最準確,但麻煩。路徑以“/”開始
-
相對路徑:簡單方便,路徑不以“/”開始
-
相對路徑的表現形式
| 直接使用目錄名或文件名 | 當前工作目錄中的子目錄、文件的位置 | grub.conf |
| 以一個點號“.”開頭 | 以當前的工作目錄作為起點 | ./grub.conf |
| 以兩個點號“..”開頭 | 以當前目錄的上一級目錄(父目錄)作為起點 | ../vmlinuz |
| 以“~用戶名”形式開頭 | 以指定用戶的宿主目錄作為起點 | ~/teacher |
④.列表顯示目錄內容-ls
-
顯示目錄中內容,包括子目錄和文件相關屬性信息
-
ls [選項] [文件或目錄… ]
-
-
常用選項
-
-l:顯示詳細信息
-
-a:顯示子目錄和文件,包括"."開頭的隱藏目錄和隱藏文
-
-A:不顯示包括"."開頭的隱藏目錄和隱藏文
-
-d:顯示該文件或目錄本身屬性
-
-h:以單位顯示文件或目錄大
-
-R:以遞歸的方式顯示目錄以及子目錄的所有內
-
--color:為查詢結果添加顏色進行顯示)
-
-
結合通配符
-
“?”:匹配文件名中的一個未知字符
-
“*”:匹配文件名中的任意多個字符
-
⑤.alias 命令
-
通過別名機制簡化常用的、比較長的命令
-
alias 命令別名=命令
-
-
設置myls 為ls -alh的別名
-
alias myls=‘ls – alh’(別名是myls)
-
-
取消別名定義:
-
unalias myls
-
⑥.統計目錄及文件空間占用情況-du
-
統計指定目錄(或文件)所占用磁盤空間的大小
-
du [選項] [文件或目錄… ]
-
-
常用選項
-
-a:統計磁盤空間占用時包括所有的文件,而不僅僅只統計目錄
-
-h:顯示出目錄或文件的大小(K、M),默認的大小單位為字節(KB)
-
-s:只統計每個參數所占用空間總的大小,而不是統計每個子目錄、文件的大小
-
2.創建目錄和文件
①.創建新目錄 – mkdir
-
創建新的空目錄
-
mkdir [選項] 目錄位置及名稱
-
mkdir -p /home/{A,B}/abc
-
以上命令為在home下創建A,B兩個文件夾及在其中創建abc文件夾
-
-
②.創建空文件 – touch
-
更新文件的時間標記
-
經常用于創建多個新的空文件
-
touch 文件…
-
但是一般常用創建文件命令是vim
-
③.創建鏈接文件 – ln
-
為文件或目錄建立鏈接文件
-
文件類型
-
軟鏈接
-
能對文件或目錄生效,做快捷方式,原始文件被刪除后快捷方式失效
-
又稱為符號鏈接
-
類似于Windows系統的快捷方式
-
-
硬鏈接
-
只能對文件,相當于文件復制,但是數據會同步,刪除一個對另一個沒有影響
-
-
| 刪除原始文件后 | 失效 | 仍舊可用 |
| 使用范圍 | 適用于文件或目錄 | 只可用于文件 |
| 保存位置 | 與原始文件可以位于不同的文件系統中 | 必須與原始文件在同一個文件系統(如一個Linux分區)內 |
-
創建軟鏈接
-
ln [-s] 源文件或目錄… 鏈接文件或目標位置
-
ln -s /bin/bzip2 /bin/wx/
-
-
注意
-
在鏈接時,要使用絕對路徑
-
3.復制、刪除、移動目錄和文件
①.復制文件或目錄-cp
-
將需要復制的文件或目錄(源)重建一份,并保存為新的文件或目錄
-
cp [選項]… 源文件或目錄… 目標文件或目錄…
-
-
常用選項
-
-f:覆蓋目標同名文件或目錄時不進行提醒,直接強制復制
-
-i:覆蓋目標同名文件或目錄時提醒用戶確認
-
-p:復制時保持源文件的權限,屬主及時間標記等屬性不變
-
-r:復制目錄時必須使用此選項,表示遞歸復制所有文件及子目錄
-
-
注意
-
復制多個文件或目錄時,目標位置必須是目錄,且目標目錄必須已存在
-
②.刪除文件或目錄-rm
-
刪除指定的文件或目錄
-
rm [選項] 要刪除的文件或目錄…
-
-
常用選項
-
-f:即使文件屬性設為只讀也直接刪除,不逐一確認,此外忽略不存在的文件,不產生提示。
-
-i:刪除之前逐一詢問確認。
-
-r:遞歸刪除目錄及其內容。
-
-rf:命令強制刪除包括目錄 不提醒
-
-
注意
-
不要直接刪除系統中已有的目錄或配置文件,以避免出現意外故障
-
③.移動文件或目錄-mv
-
將指定的文件或目錄轉移位置
-
如果目標位置與源位置相同,則相當于執行重命名操作
-
mv [選項] … 源文件或目錄… 目標文件或目錄
-
4.查找目錄和文件
①.查找命令/文件存放目錄-which
-
搜索范圍由環境變量 PATH 決定(echo $PATH)
-
which 命令|程序名
-
which -a 命令|程序名
-
-
命令演示
-
which Is
-
which cd
-
②.查找文件或目錄-find
-
采用遞歸方式,根據目標的名稱、類型、大小等不同屬性進行精細查找
-
find [查找范圍] [查找條件表達式]
-
查找范圍:查找文件或子目錄的目錄位置
-
查找條件表達式:查找條件類型
-
-
-
常用查找條件類型
| 按名稱查找 | -name | 根據目標文件的名稱進行查找,允許使用“*”及“?”通配符 |
| 按文件大小查找 | -size | 根據目標文件的大小進行查找 一般使用“+”、“-”號設置超過或小于指定的大小作為查找條件 常用的容量單位包括 kB(注意 k 是小寫)、MB、GB |
| 按文件屬主查找 | -user | 根據文件是否屬于目標用戶進行查找 |
| 按文件類型查找 | -type | 根據文件的類型進行查找 文件類型包括普通文件(f)、目錄(d)、塊設備文件(b)、字符設備文件(c)等 塊設備是指成塊讀取數據的設備(如硬盤、內存等),字符設備是指按單個字符讀取數據的設備(如鍵盤、鼠標等) |
-
使用 find 命令實現多個查找條件
-
各表達式之間使用邏輯運算符
-
“-a”表示 而且(and)
-
“-o”表示 或者(or)
-
find /boot -size +1024k -a -name “vmlinuz”
-
find /boot -size +1024k -o -name “vmlinuz”
-
-
-
目錄和文件管理
一、查看和檢索文件
1.查看文件內容
①查看文件內容cat 命令
-
cat命令
-
用途:顯示出文件的內容
-
當文件內容較多時,使用cat命令往往只能看到文件的最后一部分內容,而無法分頁逐屏顯示
-
cat [選項] 文件名 …
-
-
②查看文件內容more命令
-
more命令
-
用途:全屏方式分頁顯示文件內容
-
more命令結合管道操作使用時(例如:ls -R /etc | more)無法向上翻頁
-
more [選項] 文件名 …
-
-
-
交互操作方法
-
按Enter鍵向下逐行滾動
-
按空格鍵向下翻一屏
-
按q鍵退出
-
③查看文件內容less命令
-
less 命令
-
用途:與 more 命令相同,但擴展功能更多
-
less [選項] 文件名 …
-
-
-
交互操作方法
-
Page Up 向上翻頁,Page Down 向下翻頁
-
按“/”鍵查找內容,“n”下一個內容,“N”上一個內容
-
其他功能與 more 命令基本類似
-
④查看文件內容 head、tail 命令
-
head命令
-
用途:查看文件開頭的一部分內容(默認為10行)
-
head -n 文件名 …
-
-
-
tail命令
-
用途:查看文件結尾的少部分內容(默認為10行)
-
tail -n 文件名 …
-
tail -f 文件名
-
-
-
對比講解head、tail的用法
-
tail命令結合“-f”選項使用時,可以用于跟蹤日志文件末尾的內容變化,實時顯示更新的日志內容
-
2.統計和檢索文件內容
①統計文件內容 wc 命令
-
wc命令
-
用途:統計文件中的單詞數量(Word Count)等信息
-
wc [選項]... 目標文件...
-
-
-
常用命令選項
-
-l:統計行數
-
-w:統計單詞個數
-
-c:統計字節數
-
wc命令未指定選項時,默認相當于”-lwc“,會同時統計行數、單詞數、字節數(含空格、回車等符號)
-
②檢索和過濾文件內容 grep 命令
-
grep命令
-
用途:在文件中查找并顯示包含指定字符串的行
-
grep [選項]... 查找條件 目標文件
-
-
-
常用命令選項
-
-i:查找時忽略大小寫
-
-v:反選,輸出與查找條件不相符的行
-
-A 1:表示查看包含指定字符串及后一行
-
-B 2:表示查看包含指定字符串及前兩行
-
-C 1:表示查看包含指定字符串及前后一行
-
-c:統計指定字符串在文件中出現的行數
-
-
查找條件設置
-
要查找的字符串以雙引號括起來
-
“^……”表示以……開頭,“……$”表示以……結尾
-
“^$”表示空行
-
二、壓縮/解壓縮
1.使用壓縮和解壓縮工具
①壓縮命令 gzip、bzip2 命令
-
gzip命令、bzip2命令
-
用途:制作壓縮文件、解開壓縮文件
-
制作壓縮文件
-
gzip [-9] 文件名…
-
bzip2 [-9] 文件名...
-
-
解開壓縮文件
-
gzip -d .gz格式的壓縮文件
-
bzip2 -d .bz2格式的壓縮文件
-
-
-
-
常用命令選項
-
-9、-d
-
-
注意
-
gzip和bzip2命令使用的壓縮算法各不相同,一般來說bzip2的壓縮效率要好一些
-
對比講解gzip和bzip2命令的用法,注意說明生成文件的后綴名稱
-
gzip和bzip2命令使用的壓縮算法有一定區別,但命令使用格式基本類似,通常認為bzip2的壓縮效率要更好一些
-
這兩個命令工具通常并不單獨使用,而是與tar命令結合起來使用
-
②壓縮命令 gunzip、bunzip2 命令
-
gunzip 命令
-
gunzip 等價于 gzip –d
-
gzip -d mkfile.gz
-
-
或
-
gunzip mkfile.gz
-
-
-
bunzip2 命令
-
bzip2和bunzip2命令的用法與gzip、gunzip命令基本相同
-
2、使用 tar 歸檔和釋放工具
①歸檔命令tar命令
-
tar命令
-
用途:制作歸檔文件、釋放歸檔文件
-
tar [選項] ... 歸檔文件名 源文件或目錄
-
tar [選項]... 歸檔文件名 [-C 目標目錄]
-
-
-
常用命令選項
-
-c:創建 .tar 格式的包文件
-
-x:解開.tar格式的包文件
-
-v:輸出詳細信息
-
-f:表示使用歸檔文件
-
-p:打包時保留原始文件及目錄的權限
-
-t:在不解壓包的情況下看包內內容
-
-C:解包時指定釋放的目標文件夾
-
-z:調用gzip程序進行壓縮或解壓
-
-j:調用bzip2程序進行壓縮或解壓
-
-
注意
-
制作歸檔文件的意思是將許多零散的文件做成一個包(可以壓縮,也可以不壓縮)
-
小寫字母“-p”選項用于保持原始文件權限等信息,大寫字母“-P”選項用于保持原始文件的絕對路徑,參考“man tar”幫助
-
使用tar命令時,選項前的“-”號引導字符可以省略
-
在實際的備份工作中,通常在歸檔的同時也會將包文件進行壓縮(見下頁),以便節省磁盤空間
-
三、使用 vi 文本編輯器
1.vi 編輯器的工作模式
①文本編輯器 vi 命令
-
文本編輯器的作用
-
創建或修改文本文件
-
維護 Linux 系統中的各種配置文件
-
-
Linux中最常用的文本編輯器
-
vi:類UNIX操作系統的默認文本編輯器。
-
vim:vim是vi文本編輯器(一般簡稱為vi編輯器)的增強版本
-
②vi 編輯器的工作模式
-
三種工作模式
-
命令模式、輸入模式、末行模式
-
-
不同模式之間的切換
-
結合圖示介紹vi編輯器的三種工作模式,相當于圖形軟件窗口中的不同界面,不同的模式中能夠對文件進行的操作也不相同
-
1)命令模式:啟動vi編輯器后默認進入命令模式,該模式中主要完成如光標移動、字符串查找,以及刪除、復制、粘貼文件內容等相關操作
-
2)輸入模式:該模式中主要的操作就是錄入文件內容,可以對文本文件正文進行修改、或者添加新的內容。處于輸入模式時,vi編輯器的最后一行會出現“-- INSERT --”的狀態提示信息
-
3)末行模式:該模式中可以設置vi編輯環境、保存文件、退出編輯器,以及對文件內容進行查找、替換等操作。處于末行模式時,vi編輯器的最后一行會出現冒號“:”提示符
-
2.命令模式中的基本操作
①命令模式中的基本操作1
| 光標方向移動 | 方向鍵上下左右 | 上、下、左、右 |
| 翻頁 | Page Down或Ctrl+F | 向下翻動一整頁內容 |
| Page Up或Ctrl+B | 向上翻動一整頁內容 | 向上翻動一整頁內容 |
| 行內快速跳轉 | Home鍵或“^”、數字“0” | 跳轉至行首 |
| End鍵或“$”鍵 | 跳轉到行尾 | 跳轉到行尾 |
| 行間快速跳轉 | 1G或者gg | 跳轉到文件的首行 |
| G | 跳轉到文件的末尾行 | 跳轉到文件的末尾行 |
| #G | 跳轉到文件中的第#行 | 跳轉到文件中的第#行 |
| 行號顯示 | :set nu | 在編輯器中顯示行號 |
| :set nonu | 取消編輯器中的行號顯示 | 取消編輯器中的行號顯示 |
②命令模式中的基本操作2
| 刪除 | x或Del | 刪除光標處的單個字符 |
| dd | 刪除當前光標所在行 | 刪除當前光標所在行 |
| #dd | 刪除從光標處開始的#行內容 | 刪除從光標開始的#行內容 |
| d^ | 刪除當前光標之前到行首的所有字符 | 刪除當前光標之前到行首的所有字符 |
| d$ | 刪除當前光標處到行尾的所有字符 | 刪除當前光標處到行尾的所有字符 |
| 復制 | yy | 復制當前行整行的內容到剪貼板 |
| #yy | 復制從光標處開始的#行內容 | 復制從光標處開始的#行內容 |
| 粘貼 | p | 將緩沖區中的內容粘貼到光標位置處之后 |
| P | 粘貼到光標位置處之前 | 粘貼到光標位置處之前 |
③命令模式中的基本操作3
| /word | 從上而下在文件中查找字符串“word” |
| ?word | 從下而上在文件中查找字符串“word” |
| n | 定位下一個匹配的被查找字符串 |
| N | 定位上一個匹配的被查找字符串 |
④命令模式
| u | 按一次取消最近的一次操作 多次重復按u鍵,恢復已進行的多步操作 |
| U | 用于取消對當前行所做的所有編輯 |
| ZZ | 保存當前的文件內容并退出vi編輯器 |
3.末行模式中的基本操作
①末行模式1
| 保存文件 | :w | 保存修改的內容 |
| :w /root/newfile | 另存為其它文件 | 另存為其他文件 |
| 退出vi | :q | 未修改退出 |
| :q! | 放棄對文件內容的修改,并退出vi | 放棄對文件內容的修改,并推出vi |
| 保存文件退出 vi | :wq | 保存修改的內容并退出 |
②末行模式2
| :e ~/install.log | 打開新的文件進行編輯 |
| :r /etc/filesystems | 在當前文件中讀入其他文件內容 |
③末行模式3
| :s /old/new | 將當前行中查找到的第一個字符“old” 串替換為“new” |
| :s /old/new/g | 將當前行中查找到的所有字符串“old” 替換為“new” |
| :#,# s/old/new/g | 在行號“#,#”范圍內替換所有的字符串“old”為“new” |
| :% s/old/new/g | 在整個文件范圍內替換所有的字符串“old”為“new” |
| :s /old/new/c | 在替換命令末尾加入c命令,將對每個替換動作提示用戶進行確認 |
總結
以上是生活随笔為你收集整理的信安学习-day33的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 云计算入门必读
- 下一篇: PCB板铜箔载流量厚度的计算方法