-
總結學過的文字處理工具,檔案查詢工具,文字處理三劍客, 文字格式化命令(printf)的相關命令及選項,示例。
grep: 用於在文字中搜尋指定模式的工具。它支援使用正規表示式進行高階搜尋。 例子:grep '/sbin' test.txt sed: 流編輯器,用於在文字流中進行文字替換、刪除、插入等操作。它可以在不修改原始檔案的情況下對文字進行修改。 例子:sed 's/\/sbin/print/' test.txt awk: 用於對文字進行處理和報告的強大工具。它支援自定義的文字處理規則和操作。 例子:awk -F ":" '{print $1}' /etc/passwd cut: 用於從文字中剪下出指定欄位或列的工具。 例子:ip addr|grep 'link'|head -1|cut -d':' -f2 sort: 對文字進行排序的工具,可以按行、按欄位等進行排序。 例子:echo "5 3 1 4 2" | tr ' ' '\n' | sort -n uniq: 用於從排序後的文字中刪除重複的行。 例子:echo "5 3 1 4 2 4 2" | tr ' ' '\n' | sort -n|uniq tr: 用於轉換或刪除文字中的字元。 例子:echo "5 3 1 4 2 4 2" | tr ' ' '\n' head 和 tail: 分別用於顯示文字的開頭幾行和末尾幾行。 例子:echo "5 3 1 4 2 4 2" | tr ' ' '\n'| head -1 cat: 將檔案連線到標準輸出或檔案的工具,通常用於檢視檔案內容。 例子:cat test.txt wc: 統計文字檔案的行數、字數和字元數。 例子:echo "5 3 1 4 2 4 2" | tr ' ' '\n'|wc -l find: find 命令用於在檔案系統中查詢檔案和目錄。雖然它主要用於查詢檔案,但也可以結合其他命令和管道來搜尋檔案內容。 例子:find / -name xx.sh which:查詢檔案,多用於查詢命令來源 例子:which ls whereis:查詢工具速度最快的,只能查詢二進位制程式、文件和原始碼 例子:whereis touch printf:一個用於格式化輸出文字的命令。它可以按照指定的格式將文字輸出到標準輸出或指定的檔案中 例子:printf "Name: %s\tAge: %d\n" "John" 25
-
總結文字處理的grep命令相關的基本正則和擴充套件正規表示式。
基本正規表示式(:.: 匹配任意單個字元,除了換行符。 []: 匹配括號內的任意一個字元。 ^: 匹配行首的位置。 $: 匹配行尾的位置。 *: 匹配其前面的字元出現 0 次或多次。 \: 跳脫字元,用於匹配特殊字元。
擴充套件正規表示式 :
+: 匹配其前面的字元出現 1 次或多次。
?: 匹配其前面的字元出現 0 次或 1 次。
|: 或操作,匹配兩個或多個模式中的一個。
(): 分組,用於限制或擴充套件模式的範圍。
{}: 限定符,用於指定重複次數。
[]: 字元類,用於匹配括號內的任意一個字元。
- 總結變數命名規則,不同型別變數(環境變數,位置變數,只讀變數,區域性變數,狀態變數)如何使用。
變數命令規則:
1.以字母或下劃線開頭2.只能包含字母、數字和下劃線
3.區分大小寫4.不能使用關鍵字5.推薦使用小寫字母
6.避免使用特殊字元7.使用有意義的名稱
- 透過shell程式設計完成,30雞和兔的頭,80雞和兔的腳,分別有幾隻雞,幾隻兔?
for i in {1..30}
do
if (( i2+(30-i)4 == 80 )); then
echo "雞的數量為: $i"
echo "兔子的數量為:" $((30-i))
fi
done
-
結合程式設計的for迴圈,條件測試,條件組合,完成批次建立100個使用者,
1)for遍歷1..100'
2)先id判斷是否存在
3)使用者存在則說明存在,使用者不存在則新增使用者並說明已新增。for i in {1..100} do grep T$i /etc/passwd # if [ $? -eq 0 ]; then if [ ! $? -eq 0 ]; then useradd -M T$i # userdel T$i echo "使用者以新增" else echo "使用者已經存在" fi done
-
磁碟儲存術語總結: head, track, sector, sylinder.
磁頭(Head): 磁頭是磁碟驅動器上的一個元件,用於讀取和寫入資料。每個磁碟表面上都有一個或多個磁頭,它們可以在磁碟的不同磁軌(track)上移動,從而實現資料的讀取和寫入。 磁軌(Track): 磁軌是磁碟表面上的一個圓形軌道,沿著磁碟的半徑方向延伸。磁碟上的資料儲存在多個磁軌上,每個磁軌被劃分為一個或多個扇區(sector)。磁頭可以沿著磁碟的半徑方向在不同的磁軌之間移動,以讀取或寫入資料。 扇區(Sector): 扇區是磁碟上的最小資料儲存單位,通常儲存一個固定大小的資料塊(例如 512 位元組)。磁碟的表面被劃分為多個同心圓狀的磁軌,每個磁軌由多個扇區組成。資料可以透過磁頭讀取或寫入磁碟的扇區。 柱面(Cylinder): 柱面是垂直穿過所有磁碟表面的一個虛擬圓柱體,由相同半徑的各個磁軌組成。柱面號通常用來表示位於磁碟的不同磁軌上的扇區的物理位置。在定址中,柱面號可以用來定位資料的儲存位置。
-
總結MBR,GPT結構。
MBR:
容量限制: MBR 方案最多支援 2TB 的硬碟容量。
分割槽限制: MBR 方案最多支援 4 個主分割槽,或者 3 個主分割槽和 1 個擴充套件分割槽(可以包含多個邏輯分割槽)。
引導方式: MBR 採用傳統的引導方式,由 446 位元組的引導程式碼、64 位元組的分割槽表和 2 位元組的標識組成。
主要用途: MBR 格式通常用於 BIOS(基於傳統 BIOS 的計算機)引導的硬碟。
GPT:
容量限制: GPT 方案支援最多 18EB的硬碟容量。
分割槽限制: GPT 方案支援最多 128 個分割槽條目,不再受到主分割槽和擴充套件分割槽的限制。
引導方式: GPT 採用更現代的 EFI引導方式,引導資料儲存在備份的分割槽表中。
主要用途: GPT 格式通常用於 UEFI引導的計算機硬碟,它更適用於較大容量的硬碟和更靈活的分割槽管理需求。
-
總結學過的分割槽,檔案系統管理,SWAP管理相關的命令及選項,示例
fdisk, parted, mkfs, tune2fs, xfs_info, fsck, mount, umount, swapon, swapofffdisk:用於對磁碟進行分割槽。 例子:fdisk /dev/sdb parted:磁碟分割槽工具,功能比fdisk更加強大,支援更多檔案系統型別 例子:parted /dev/sdb mkfs:用於在檔案系統上建立新檔案系統。 例子: mkfs.ext4 /dev/sdb1 tune2fs:用於調整 ext2/ext3/ext4 檔案系統的引數和屬性。 例子: tune2fs -L mydata /dev/sdb1 xfs_info:用於顯示 XFS 檔案系統的資訊。 例子:xfs_info /dev/sdb1 fsck:用於檢查和修復檔案系統 例子 fsck.ext4 -y /dev/sdb1 mount:用於將檔案系統掛載到檔案系統層次結構中的指定位置。 例子 mount /dev/sdb1 /mnt/data umount:用於解除安裝已經掛載的檔案系統。 例子:umount /mnt/data swapon:用於啟用交換分割槽或檔案。 例子 swapon /dev/sdb2 swapoff:用於關閉交換分割槽或檔案。 例子 swapoff /dev/sdb2