主頁 >  其他 > 鳥哥的Linux私房菜-基礎學習篇(第四版)_讀書筆記

鳥哥的Linux私房菜-基礎學習篇(第四版)_讀書筆記

2020-11-18 06:21:28 其他

鳥哥的Linux私房菜-基礎學習篇(第四版)_讀書筆記

  • 第四章 首次登入與在線求助
    • 4.2 文本模式下指令的下達
      • 4.2.2 基礎指令的操作
        • cal
  • 第六章 Linux 檔案與目錄管理
    • 6.1 目錄與路徑
    • 6.2 檔案與目錄管理
      • 6.1.2 目錄的相關操作
        • mkdir (建立新目錄)
      • 6.2.2 復制、洗掉與移動: cp, rm, mv
        • cp (復制檔案或目錄)
        • rm (移除檔案或目錄)
    • 6.3 檔案內容查閱
      • 6.3.1 直接檢視檔案內容
        • cat (concatenate)
        • tac (反向列示)
        • nl (添加行號列印)
      • 6.3.2 可翻頁檢視
        • more (一頁一頁翻動)
        • less (一頁一頁翻動)
    • 6.5 指令與檔案的搜尋
      • 6.5.2 檔案檔名的搜尋
        • find
          • 與時間相關的引數
            • -mtime -n +n
          • 與名稱有關的引數
            • -name: 按名稱過濾,可使用正則運算式,區分大小寫
            • -iname: 按名稱過濾,可使用正則運算式,不區分大小寫
            • -o: or,表示“或”的關系(括號需轉義)
          • 其他相關引數
            • -type:按型別過濾:
          • 參考檔案
  • 第七章 Linux 磁盤與檔案系統管理
    • 7.2 檔案系統的簡單操作
      • 7.2.1 磁盤與目錄的容量
        • df
        • du
  • 第八章 檔案與檔案系統的壓縮,打包與備份
    • 8.2 Linux 系統常見的壓縮指令
      • 8.2.1 gzip, zcat/zmore/zless/zgrep
      • 8.2.2 bzip2, bzcat/bzmore/bzless/bzgrep
      • 8.2.3 xz, xzcat/xzmore/xzless/xzgrep
    • 8.3 打包指令: tar
      • 8.3.1 tar
        • tar
        • zip
    • 8.6 其他常見的壓縮與備份工具
      • 8.6.1 dd
  • 第九章 vim 程式編輯器
    • 9.3 vim 的額外功能
      • 9.3.5 vim 環境設定與記錄: ~/.vimrc, ~/.viminfo
        • ~/.viminfo
        • /etc/vimrc & ~/.vimrc
  • 第十章、認識與學習 BASH
    • 10.3 命令別名與歷史命令
      • 10.3.1 命令別名設定: alias, unalias
        • alias
        • unalias
      • 10.3.2 歷史命令: history
        • history
    • 10.6 管線命令 (pipe)
      • 10.6.1 擷取命令: cut, grep
        • cut
      • 10.6.2 排序命令: sort, wc, uniq
        • wc
      • 10.6.6 引數代換: xargs
        • xargs
    • 10.8 本章習題
      • 簡答題
        • 你輸入一串指令之后,發現前面寫的一長串資料是錯的,你想要洗掉游標所在處到最前面的指令串內容,應該如何處理?
        • 如何顯示 HOME 這個環境變數?
  • 第十一章 正規表示法與檔案格式化處理
    • 11.1 開始之前:什么是正規表示法
    • 11.2 基礎正規表示法
      • 11.2.2 grep 的一些進階選項
      • 11.2.5 sed 工具
        • 以行為單位進行洗掉
        • 以行為單位進行新增/插入
        • 以行為單位進行替換
        • 以行為單位進行查詢/列印
        • 行中資料的替換
        • 直接修改檔案內容(危險動作)
    • 11.4 檔案的格式化與相關處理
      • 11.4.2 awk:好用的資料處理工具
        • awk
          • awk的默認變數
          • awk 的邏輯運算字符
          • 函式
          • 條件
          • if陳述句
          • 參考檔案
  • 第十三章 Linux 賬號管理與 ACL 權限設定
    • 13.6 Linux 主機上的用戶訊息傳遞
      • 13.6.1 查詢使用者: w, who, last, lastlog
        • w
        • who
        • lastlog
  • 第十四章 磁盤配額(Quota)與進階檔案系統管理
    • 14.1 磁盤配額 (Quota) 的應用與實作
    • 14.2 軟體磁盤陣列 (Software RAID)
    • 14.3 邏輯滾動條管理員 (Logical Volume Manager)
      • 14.3.1 什么是 LVM: PV, PE, VG, LV 的意義
      • 14.3.2 LVM 實作流程
      • 14.3.3 放大 LV 容量
      • 14.3.4 使用 LVM thin Volume 讓 LVM 動態自動調整磁盤使用率
      • 14.3.5 LVM 的 LV 磁盤快照
      • 14.3.6 LVM 相關指令匯整與 LVM 的關閉
    • 14.4 重點回顧
    • 14.5 本章習題
    • 14.6 參考資料與延伸閱讀
  • 第十六章 行程管理與 SELinux 初探
    • 16.3 行程管理
      • 16.3.1 行程的觀察
        • top-動態查看行程資訊
    • 16.4 特殊檔案與行程
      • 16.4.3. 查詢已開啟檔案或已執行行程開啟之檔案
        • lsof :列出被行程所開啟的檔案檔名
  • 第十八章 認識與分析登錄檔
    • 18.1 什么是登錄檔
      • 18.1.1 CentOS 7 登錄檔簡易說明
    • 18.4 systemd-journald.service 簡介
      • 18.4.1 使用 journalctl 觀察登錄資訊
  • 第十九章 開機流程、模塊管理與 Loader
    • 19.3 Boot Loader: Grub2
  • 第二十章 基礎系統設定與備份策略
    • 20.1 系統基本設定
      • 20.1.1 網路設定 (手動設定與 DHCP 自動取得)
        • 手動設定 IP 網路引數
        • 自動取得 IP 引數
        • 修改主機名
          • 主機名的查看
          • 主機名的修改
  • 第二十二章 軟體安裝 RPM, SRPM 與 YUM
    • 22.1 軟體管理員簡介
      • 22.1.1 Linux 界的兩大主流: RPM 與 DPKG
      • 22.1.2 什么是 RPM 與 SRPM
      • 22.1.3 什么是 i386, i586, i686, noarch, x86_64
      • 22.1.4 RPM 的優點
      • 22.1.5 RPM 屬性相依的克服方式: YUM 在線升級
    • 22.2 RPM 軟體管理程式:rpm
      • 22.2.1 RPM 默認安裝的路徑
      • 22.2.2 RPM 安裝 (install)
      • 22.2.3 RPM 升級與更新 (upgrade/freshen)
      • 22.2.4 RPM 查詢 (query)
      • 22.2.5 RPM 驗證與數字簽名 (Verify/signature)
      • 22.2.6 RPM 反安裝與重建資料庫 (erase/rebuilddb)
    • 22.3 YUM 在線升級機制
    • 22.4 SRPM 的使用:rpmbuild (Optional)
    • 22.5 重點回顧
    • 22.6 本章習題
    • 22.7 參考資料與延伸閱讀

第四章 首次登入與在線求助

4.2 文本模式下指令的下達

4.2.2 基礎指令的操作

cal

cal					# 查看當月日歷
cal -3				# 查看最近3月的日歷(前月、當月、后月)

cal 2020			# 查看 2020 年的日歷
cal -y 2020			# 查看 2020 年的日歷

cal 3 2020			# 查看 2020 年 3 月的日歷

Linux命令模式下查看日歷

第六章 Linux 檔案與目錄管理

6.1 目錄與路徑

6.2 檔案與目錄管理

6.1.2 目錄的相關操作

mkdir (建立新目錄)

  • -v :verbose,創建程序可視化
  • -p :parents,先創建父目錄,在創建子目錄
mkdir -pv /data/mysql			# 遞回創建/data, /data/mysql目錄

6.2.2 復制、洗掉與移動: cp, rm, mv

cp (復制檔案或目錄)

-t, --target-directory=DIRECTORY:target,目標,-t 引數指定復制到的目標目錄

rm (移除檔案或目錄)

6.3 檔案內容查閱

cat 		從第一行開始顯示檔案內容,由第一行顯示到最后一行
tac			從最后一行開始顯示檔案內容,由最后一行顯示到第一行,tac 就是 cat 的倒著寫

nl			顯示的時候,順便顯示行號

more		分頁顯示檔案內容
less		分頁顯示檔案內容

head		取出并顯示前幾行
tail		取出并顯示后幾行

od			以二進制的方式讀取檔案內容

6.3.1 直接檢視檔案內容

cat (concatenate)

tac (反向列示)

nl (添加行號列印)

6.3.2 可翻頁檢視

more (一頁一頁翻動)

more:分頁顯示檔案內容

space(空格鍵)					# 向后翻頁
b 或 ctrl+b						# 向前翻頁(只對檔案有用,對管道無用)
enter							# 向下翻一行

:f								# 顯示檔案名及目前所在行數
q								# 退出

less (一頁一頁翻動)

less:分頁顯示檔案內容

pagedown 或 space(空格鍵)		# 向后翻頁
pageup							# 向前反野
enter							# 向下翻一行

g								# 跳轉到檔案的第一行
G								# 跳轉到檔案的最后一行

/string							# 向后搜索字串 string
?string							# 向前搜索字串 string
n								# 重復前一行搜索
N								# 反向重復前一個搜索

:f								# 顯示檔案名及目前所在行數
q								# 退出

6.5 指令與檔案的搜尋

6.5.2 檔案檔名的搜尋

find

與時間相關的引數

與時間有關的引數,共有 -atime、-ctime、-mtime,以 -mtime 為例進行說明:
-mtime n:過濾 n 天之前的那天被修改過的檔案

-mtime -n +n

-mtime -n +n:modify time,按照修改時間來查找檔案或目錄,-n 表示修改時間距現在 n 天以內,+n 表示修改時間距現在 n 天以前

find / -mtime 0

# 查找"~"目錄下修改時間在最近7天以內、匹配"*jpeg"或"*jpg"的檔案和目錄,不區分大小寫
find ~ \( -iname '*jpeg' -o -iname '*jpg' \) -type f -mtime -7	
與名稱有關的引數
-name: 按名稱過濾,可使用正則運算式,區分大小寫
find ~ -name '*jpg'		# 查找"~"目錄下所有匹配"*jpg"的檔案及目錄,區分大小寫
-iname: 按名稱過濾,可使用正則運算式,不區分大小寫
find ~ -iname '*jpg'		# 查找"~"目錄下所有匹配"*jpg"的檔案及目錄,不區分大小寫
  • -name filename:查找檔案名為 filename 的檔案
  • -size [+/-]SIZE:查找大小大于(+size)/小于(-size) size 的檔案,單位:c(byte),k(KB),m(MB)
  • -type TYPE:查找檔案型別為 TYPE 的檔案,對應檔案型別有:f(檔案),b、c(裝置檔案),d(目錄),鏈接(l),socket(s),FIFO(p)
  • -perm MODE:查找檔案權限為 MODE 的檔案
  • -perm -MODE:查詢檔案權限包含 MODE 中所有權限的檔案
  • -perm /MODE:查找檔案權限包含 mode 中任一權限的檔案
find / -name passwd			# 查找 / 目錄下名稱為 passwd 的檔案
find / -name "*passwd*" 	# 查找 / 目錄下名稱含 passwd 字串的檔案,* 做通配符

find / -perm /7000			# 查找 / 目錄下檔案權限包含 7000 中任一權限的檔案

find /run -type s			# 查找 /run 目錄下型別為 s 的檔案
-o: or,表示“或”的關系(括號需轉義)
# 查找"~"目錄下所有匹配"jpeg"或"jpg"的檔案及目錄,
# 不區分大小寫,其中括號需使用"\"轉義
find ~ \( -iname 'jpeg' -o -iname 'jpg' \)		
其他相關引數
  • -exec command:對 find 命令的查找結果執行命令 command
  • -print:默認引數,列印 find 命令查找結果
# 查找 /usr/bin, /usr/sbin/ 目錄中、檔案權限含 7000 中任一權限的檔案,并使用 ls -l 命令羅列出來
find /usr/bin/ /usr/sbin/ -perm -7000 -exec ls -l {} \;

find -type f -name 'test.c' -exec rm -rf {} \;	# 查找當前目錄下名稱為 test.c 的檔案并洗掉
find -type f -name "*.txt" -exec rm -rf {} \;	# 查找當前目錄下后綴為 txt 的檔案并洗掉
find /					# 查詢 / 目錄下的所有檔案

# 查找"~"目錄下修改時間為最近7天內、匹配"*jpeg"或"*jpg"的檔案,并將其復制到 ~/Pictures 目錄
sudo find ~ \( -iname '*jpeg' -o -iname '*jpg' \) -type f -mtime -7 -print0 | xargs -0 cp -t ~/Pictures/
-type:按型別過濾:

-type:按型別過濾檔案或目錄,可選值如下:

  • b:塊設備檔案
  • c:字符設備檔案
  • d:目錄
  • f:普通檔案
  • l:符號鏈接檔案
  • p:管道檔案
# 查找"~"目錄下所有匹配"*jpeg"或"*jpg"的檔案,不區分大小寫,其中括號需轉義
find ~ \( -iname '*jpeg' -o -iname '*jpg' \) -type f 	

# 查找"~"目錄下所有匹配"*jpeg"或"*jpg"的目錄,不區分大小寫,其中括號需轉義
find ~ \( -iname '*jpeg' -o -iname '*jpg' \) -type d 		
參考檔案

在Linux系統中, 為找到檔案try_grep含有以a字母
【日常小記】linux中強大且常用命令:find、grep
每天一個linux命令(22):find 命令的引數詳解
Linux中find命令用法全匯總,看完就沒有不會用的!
Linux之Find命令詳解
find命令

第七章 Linux 磁盤與檔案系統管理

7.2 檔案系統的簡單操作

7.2.1 磁盤與目錄的容量

df

df——Disk File,查看磁盤大小
Linux 查看檔案夾大小,磁盤剩余空間(du/df)

du

du——Disk Usage,查看檔案/目錄大小

  • -s, --summarize :對檔案大小求和
  • -k, --kilobytes :以 KB 為單位進行計數
  • -m, --megabytes :以 MB 為單位進行計數
  • -h, --human-readable :以人類可讀的方式進行統計計數,及以 GB 為單位進行計數
  • -t, --threshold=SIZE :篩選大小超過 SIZE 的檔案或目錄
man du						# 查看 du 命令的幫助資訊

du -sm /home/fly/GoEnv		# 以 MB 為單位對 /home/fly/GoEnv 目錄進行大小的求和統計

Linux 查看檔案夾大小,磁盤剩余空間(du/df)
linux如何查詢檔案及檔案夾大小?
Linux du命令
linux命令詳解之du命令
du命令_Linux du命令:查看檔案夾和檔案的磁盤占用情況

第八章 檔案與檔案系統的壓縮,打包與備份

8.2 Linux 系統常見的壓縮指令

8.2.1 gzip, zcat/zmore/zless/zgrep

8.2.2 bzip2, bzcat/bzmore/bzless/bzgrep

8.2.3 xz, xzcat/xzmore/xzless/xzgrep

8.3 打包指令: tar

8.3.1 tar

tar

以下五個是獨立的命令,壓縮解壓都要用到其中一個,可以和其他命令連用但只能用到其中一個,

  • -c: 建立壓縮檔案
  • -x: 解壓
  • -v: 顯示所有程序
  • -C: 解壓到指定的目錄

以下是根據壓縮/解壓的需要可選的引數

  • -x: 有gzip屬性的

引數-f是必須的

  • -f: 檔案名;切記:這個引數是最后一個引數,后面只能接檔案名
tar cvf node_modules.tar node_modules/ 	# 壓縮 node_modules/ 目錄到 tar 格式的 node_modules.tar 檔案

tar cvf test.tar airflow/ dags/			# 壓縮 airflow/, dags/ 目錄到 tar 格式的 test.tar 檔案

tar xvf deploy.tar						# 解壓 deploy.tar 檔案

# 解壓mysql-5.7.28-linux-glibc2.12-x86_64.tar.gz檔案到/usr/local/下的同名目錄
tar zxvf mysql-5.7.28-linux-glibc2.12-x86_64.tar.gz -C /usr/local/	

Linux下常用壓縮 解壓命令和壓縮比率對比
linux的tar命令詳情;linux多個檔案壓縮打包到一個壓縮檔案
linux下解壓tgz檔案
linux解壓rar檔案
tar壓縮解壓縮命令詳解

Ubuntu 下解壓tar.xz方法

zip

zip -r Golang-Win.zip Golang-Win	# 將 Golang-Win 目錄壓縮為 Golang-Win.zip 檔案

unzip Golang-Win.zip -d Golang-Win	# 將 Golang-Win.zip 檔案解壓到 Golang-Win 目錄

8.6 其他常見的壓縮與備份工具

8.6.1 dd

第九章 vim 程式編輯器

9.3 vim 的額外功能

9.3.5 vim 環境設定與記錄: ~/.vimrc, ~/.viminfo

~/.viminfo

~.viminfo 檔案用于記錄 vim 的操作歷史(越近的操作排在越上面),由系統自行創建

/etc/vimrc & ~/.vimrc

/etc/vimrc 和 ~/.vimrc 檔案都是用于設定 vim 的環境變數的,

  • /etc/vimrc:vim 的全域環境變數設定檔案,在這個檔案中設定的 vim 環境變數對系統全域有效,該檔案為系統自行建立,不需用戶手動創建;
  • ~/.vimrc:vim 的個人環境變數設定檔案,在這個檔案中設定的 vim 環境變數對個人環境有效,該檔案需用戶自行創建

vim 相關的環境變數如下:

:set all	# 查看 vim 所有的環境變數

第十章、認識與學習 BASH

10.3 命令別名與歷史命令

10.3.1 命令別名設定: alias, unalias

alias

alias					# 列出所有已設定的命令別名
alias ll='ls -l'		# 設定 ls -l 命令的別名為 ll

unalias

unalias ll				# 取消 ls -l 的命令別名 ll

Ubuntu學習之alias命令
ubuntu檔案夾建立軟鏈接方法

10.3.2 歷史命令: history

history

history: 查看或寫入歷史命令到~/.bash_history檔案
histroy 命令讀取與記錄 ~/.bash_history 檔案的流程如下:

[dmtsai@study ~]$ history [n]
[dmtsai@study ~]$ history [-c]
[dmtsai@study ~]$ history [-raw] histfiles
選項與引數:
	n : 數字,要列出的歷史命令的行數
	-c : 將目前的 shell 中的所有 history 內容全部消除
	-a : 將目前新增的 history 指令新增入 histfiles 中,若沒有加 histfiles ,則預設寫入 ~/.bash_history
	-r : 將 histfiles 的內容讀到目前這個 shell 的 history 記憶中;
	-w : 將目前的 history 記憶內容寫入 histfiles 中!
# 范例一: 列出目前記憶體中的所有歷史命令
history
# 列出的資訊當中,包含兩列,第一列為命令的行數,第二列為具體的命令;
# 總共列出的命令列數與系統引數 HISTSIZE 有關!

在這里插入圖片描述

# 范例二: 列出最近的3筆歷史命令
history 3
[dmtsai@study ~]$ !number
[dmtsai@study ~]$ !command
[dmtsai@study ~]$ !!
選項與引數:
	number : 執行第幾筆指令的意思;
	command :由最近的指令向前搜尋『指令串開頭為 command』的那個指令,并執行;
	!! :就是執行上一個指令(相當于按↑按鍵后,按 Enter)

!66							# 執行第 66 筆指令
!! 							# 執行上一個指令
!al 						# 執行最近以 al 為開頭的指令

10.6 管線命令 (pipe)

10.6.1 擷取命令: cut, grep

cut

10.6.2 排序命令: sort, wc, uniq

wc

linux中wc命令用法

10.6.6 引數代換: xargs

xargs

xargs:接受標準輸入,并以"空格"作為分隔符,將標準輸入組合為一行新的引數,傳遞給之后的命令或直接進行列印;
xargs 主要用于作為管道來傳遞引數,以方便傳遞引數給那些非管道命令

選項與引數:
-0 :如果輸入的 stdin 含有特殊字符,例如 \、空格鍵等等字符時, 這個 -0 引數可以將他還原成一般字符, 這個引數可以用于特殊狀態喔!
-e :這個是 EOF (end of file) 的意思,后面可以接一個字串, 當 xargs 分析到這個字串時,就會停止作業!
-p :通過 xargs 傳遞引數前進行詢問
-n :number,每次通過 xargs 傳遞的引數的數量
# 獲取標準輸入,并將標準輸入直接傳遞給 ls 命令
find /usr/sbin/ -perm /7000 | xargs ls -l

# 獲取標準輸入,并將標準輸入以"空格"作為分隔符組合為一行新的資料,
# 然后傳遞給 id 命令,每次傳遞一個引數
cut -d ':' -f 1 /etc/passwd | head -n 3 | xargs -n 1 id

# 獲取標準輸入,并將標準輸入以"空格"作為分隔符組合為一行新的資料,
# 然后傳遞給 id 命令,每次傳遞一個引數,在傳遞引數前將會進行詢問
cut -d ':' -f 1 /etc/passwd | head -n 3 | xargs -n 1 -p id

# 獲取標準輸入,并將標準輸入以"空格"作為分隔符組合為一行新的資料,
# 然后傳遞給 id 命令,每次傳遞一個引數,在引數傳遞前將會進行詢問,執行到'sync'引數時則終止(不包含)
cut -d ':' -f 1 /etc/passwd | xargs -n 1 -e'sync' id

10.8 本章習題

簡答題

你輸入一串指令之后,發現前面寫的一長串資料是錯的,你想要洗掉游標所在處到最前面的指令串內容,應該如何處理?

按下 ctrl + u 組合鍵即可

如何顯示 HOME 這個環境變數?

echo $HOME

第十一章 正規表示法與檔案格式化處理

11.1 開始之前:什么是正規表示法

11.2 基礎正規表示法

11.2.2 grep 的一些進階選項

11.2.5 sed 工具

sed——管道命令,用于對管道中的資料以行為單位進行增刪改查,

sed [-nefr] [n1[,n2]]function
選項與引數:
	-n :slient,安靜模式,常規 sed 的用法中,會列印所有行;使用安靜模式后,只列印符合查詢條件的行
	-e :edit, 編輯;
	-f :直接將 sed 的動作寫在一個檔案內, -f filename 則可以執行 filename 內的 sed 動作;
	-r :sed 的動作支持的是延伸型正規表示法的語法, (預設是基礎正規表示法語法)
	-i :直接修改讀取的檔案內容,而不是由螢屏輸出,
	n1, n2 :操作資料的行數,可為空
	function :操作資料的命令,支持如下操作:
		a :add,新增,a 后接字串,在對應行后(對應行的下一行)新增字串
		c :replace,替換,c 后接字串,將指定行替換為字串
		d :delete,洗掉
		i :insert,插入,i 后接字串,在對應行前(對應行的上一行)新增字串
		p :print,列印,通常與 sed -n 一起使用
		s :replace,取代,常用格式: sed 's/要被取代的字串/新的字串/g'

以行為單位進行洗掉

# 使用 nl 
nl /etc/passwd | sed '2d'		# 使用 sed 命令洗掉 'nl /etc/passwd' 命令輸出資料的第2行
nl /etc/passwd | sed '2,5d'		# 使用 sed 命令洗掉 'nl /etc/passwd' 命令輸出資料的第2-5行
nl /etc/passwd | sed '3,$d'		# 使用 sed 命令洗掉 'nl /etc/passwd' 命令輸出資料的3-最后一行

以行為單位進行新增/插入

# 使用 sed 命令在 'nl /etc/passwd' 命令的輸出資料的第二行后(即第三行)新增 'drink tea' 字串
nl /etc/passwd | sed '2a drink tea' 
# 使用 sed 命令在 'nl /etc/passwd' 命令的輸出資料的第二行前(即第二行)插入 'drink tea' 字串
nl /etc/passwd | sed '2i drink tea'
# 使用 sed 命令在 'nl /etc/passwd' 命令的輸出資料的第二行前(即第二行)插入 'drink tea or drink coffee' 字串
nl /etc/passwd | sed '2i drink tea \
> or drink coffee'

以行為單位進行替換

# 使用 sed 命令將 '/etc/passwd' 輸出資料的第2-5行替換為'No 2-5 number'字串
nl /etc/passwd | sed '2,5c No 2-5 number'

以行為單位進行查詢/列印

# 使用 sed 命令(顯示所有資料,符合查詢條件的資料會重復列印)查詢并列印 'nl /etc/passwd' 命令的輸出資料的第5-7行
nl /etc/passwd | sed '5,7p'
# 使用 sed 命令以安靜模式(不符合查詢條件的資料不顯示)查詢并列印 'nl /etc/passwd' 命令的輸出資料的第5-7行
nl /etc/passwd | sed -n '5,7p'

行中資料的替換

# 1. 查看 wlp2s0 網卡相關資訊
ifconfig wlp2s0
# 2. 查看 wlp2s0 網卡相關資訊,并過濾 IP 相關行
ifconfig wlp2s0 | grep 'inet '
# 3. 查看 wlp2s0 網卡相關資訊,過濾 IP 相關行,并將頭部 inet 替換為空串
ifconfig wlp2s0 | grep 'inet ' | sed 's/^.*inet //g'
# 4. 查看 wlp2s0 網卡相關資訊,過濾 IP 相關行,將頭部 inet 替換為空串,并將尾部 netmask 替換為空串
ifconfig wlp2s0 | grep 'inet ' | sed 's/^.*inet //g' | sed 's/ *netmask.*$//g'

# 1. 過濾 /etc/manpath.config 檔案中 'MAN' 相關資料
cat /etc/manpath.config | grep 'MAN'
# 2. 過濾 /etc/manpath.config 檔案中 'MAN' 相關資料,并將 # 開始的行替換為空行
cat /etc/manpath.config | grep 'MAN'| sed 's/#.*$//g'
# 3. 過濾 /etc/manpath.config 檔案中 'MAN' 相關資料,將 # 開始的行替換為空行,然后洗掉空行
cat /etc/manpath.config | grep 'MAN'| sed 's/#.*$//g' | sed '/^$/d'

直接修改檔案內容(危險動作)

sed -i 's/\.$/\!/g' regular_express.txt		# 將 regular_express.txt 檔案中所有結尾處的.替換為!

sed -i '$a # This is a test' regular_express.txt	# 在 regular_express.txt 檔案尾新增 '# This is a test'

11.4 檔案的格式化與相關處理

11.4.2 awk:好用的資料處理工具

awk

awk——按列處理資料

  • -F :分隔符

awk 通常運作的模式是這樣的:

 awk '條件型別 1{動作 1} 條件型別 2{動作 2} ...' filename

awk 后面接兩個單引號并加上大括號 {} 來設定想要對資料進行的處理動作, awk 可以處理后續接的檔案,也可以讀取來自前個指令的 standard output , 但如前面說的, awk 主要是處理『每一行的欄位內的資料』,而默認的『欄位的分隔符為 “空格鍵” 或 “[tab]鍵” 』 !

在 awk 的括號內, 每一行的每個欄位都是有變數名稱的,那就是 $1, $2… 等變數名稱,以上面的例子來說, dmtsai 是 $1 ,因為他是第一欄嘛!至于 192.168.1.100是第三欄, 所以他就是 $3 啦!后面以此類推~呵呵!還有個變數喔!那就是 $0 , $0 代表『一整列資料』的意思~以上面的例子來說,第一行的 $0 代表的就是『 dmtsai … 』那一行啊!

# last -n 5: 使用last指令取出登錄用戶,只取前5行
# awk '{print $1 "\t" $3}': 以空格(默認)為分隔符,列印(print)出第一列($1)和第三列($3)的資料,
# 并以"\t"為分隔符進行顯示
last -n 5 | awk '{print $1 "\t" $3}'

awk 是『 以行為一次處理的單位』, 而『 以欄位為最小的處理單位』,

awk的默認變數
變數名稱代表意義
FILENAME當前檔案名
NFNum Field,每一行 ($0) 擁有的欄位總數;NF表示欄位總數,$NF表示最后一個欄位,$(NF-1)表示倒數第二個欄位
NRNum Row,目前 awk 所處理的是『第幾行』資料
FSField Split,欄位分隔符,默認是空格或制表符,也可使用-F引數指定
RSRow Split,行分隔符,用于分割每一行,默認是換行符,
OFSOutput Field Split,輸出欄位的分隔符,用于列印時分隔欄位,默認為空格
ORSOutput Row Split,輸出記錄的分隔符,用于列印時分隔記錄,默認為換行符,
OFMT數字輸出的格式,默認為%.6g
# last -n 5: 使用last指令取出登錄用戶,只取前5行
# awk '{print $1 "\t lines: " NR "\t columns: " NF}': 以空格(默認)為分隔符,拆分前面命令的輸出,
# 并以\t為分隔符,列印出對應變數的資料
# 并以"\t"為分隔符進行顯示
last -n 5| awk '{print $1 "\t lines: " NR "\t columns: " NF}'
awk 的邏輯運算字符
運算單元代表意義
>大于
<小于
>=大于或等于
<=小于或等于
==等于
!=不等于
# {FS=":"}, 以:為分隔符進行分割,從第二行開始生效
cat /etc/passwd | awk '{FS=":"} $3 < 10 {print $1 "\t " $3}'

# BEGIN {FS=":"}, 以:為分隔符進行分割,從第一行開始生效,BEGIN表示預設變數
cat /etc/passwd | awk 'BEGIN {FS=":"} $3 < 10 {print $1 "\t " $3}'
函式
條件
if陳述句

awk提供了if結構,用于撰寫復雜的條件,

# 以":"為分隔符,查找demo.txt(/etc/passwd檔案的備份)檔案中第一列大于m的欄位并輸出
awk -F ':' '{if ($1 > "m") print $1}' demo.txt

if結構還可以指定else部分,

awk -F ':' '{if ($1 > "m") print $1; else print "---"}' demo.txt
參考檔案

Linux三劍客之awk命令
awk 入門教程
AWK程式設計語言

第十三章 Linux 賬號管理與 ACL 權限設定

13.6 Linux 主機上的用戶訊息傳遞

13.6.1 查詢使用者: w, who, last, lastlog

w

who

lastlog

第十四章 磁盤配額(Quota)與進階檔案系統管理

14.1 磁盤配額 (Quota) 的應用與實作

14.2 軟體磁盤陣列 (Software RAID)

14.3 邏輯滾動條管理員 (Logical Volume Manager)

14.3.1 什么是 LVM: PV, PE, VG, LV 的意義

14.3.2 LVM 實作流程

14.3.3 放大 LV 容量

14.3.4 使用 LVM thin Volume 讓 LVM 動態自動調整磁盤使用率

14.3.5 LVM 的 LV 磁盤快照

14.3.6 LVM 相關指令匯整與 LVM 的關閉

14.4 重點回顧

14.5 本章習題

14.6 參考資料與延伸閱讀

第十六章 行程管理與 SELinux 初探

16.3 行程管理

16.3.1 行程的觀察

top-動態查看行程資訊

16.4 特殊檔案與行程

16.4.3. 查詢已開啟檔案或已執行行程開啟之檔案

lsof :列出被行程所開啟的檔案檔名

sudo lsof -i :80				# 列出所有在使用80埠的行程
lsof -p 2148|grep 1521|wc -l	## 查看專案使用的相關連接檔案

lsof命令
linux lsof命令詳解

第十八章 認識與分析登錄檔

18.1 什么是登錄檔

18.1.1 CentOS 7 登錄檔簡易說明

18.4 systemd-journald.service 簡介

18.4.1 使用 journalctl 觀察登錄資訊

第十九章 開機流程、模塊管理與 Loader

19.3 Boot Loader: Grub2

第二十章 基礎系統設定與備份策略

20.1 系統基本設定

20.1.1 網路設定 (手動設定與 DHCP 自動取得)

手動設定 IP 網路引數

自動取得 IP 引數

修改主機名

主機名的查看
hostname					# 查看主機名

hostnamectl 				# 查看主機名、系統內核、架構、作業系統

cat /etc/hostname			# 查看主機名
主機名的修改
hostnamectl set-hostname fly			# 修改主機名為 fly

第二十二章 軟體安裝 RPM, SRPM 與 YUM

22.1 軟體管理員簡介

22.1.1 Linux 界的兩大主流: RPM 與 DPKG

22.1.2 什么是 RPM 與 SRPM

22.1.3 什么是 i386, i586, i686, noarch, x86_64

22.1.4 RPM 的優點

22.1.5 RPM 屬性相依的克服方式: YUM 在線升級

22.2 RPM 軟體管理程式:rpm

22.2.1 RPM 默認安裝的路徑

22.2.2 RPM 安裝 (install)

[root@study ~]# rpm -ivh package_name
選項與引數:
	-i :install
	-v :view,查看安裝詳細安裝資訊
	-h :以安裝資訊列顯示安裝進度

范例一:安裝原版光碟上的 rp-pppoe 軟體
	[root@study ~]# rpm -ivh /mnt/Packages/rp-pppoe-3.11-5.el7.x86_64.rpm
	Preparing... ################################# [100%]
	Updating / installing...
	1:rp-pppoe-3.11-5.el7 ################################# [100%]

范例二、一口氣安裝兩個以上的軟體時:
	[root@study ~]# rpm -ivh a.i386.rpm b.i386.rpm *.rpm
	# 后面直接接上許多的軟體檔案!

范例三、直接由網路上面的某個檔案安裝,以網址來安裝:
	[root@study ~]# rpm -ivh http://website.name/path/pkgname.rpm

rpm 安裝時常用的選項與引數說明

可下達的選項代表意義
–nodeps使用時機:當發生軟體屬性相依問題而無法安裝,但你執意安裝時
危險性: 軟體會有相依性的原因是因為彼此會使用到對方的機制或功能,
如果強制安裝而不考慮軟體的屬性相依, 則可能會造成該軟體的無法正常使用!
–replacefiles使用時機: 如果在安裝的程序當中出現了『某個檔案已經被安裝在你的系統上面』的資訊,
又或許出現版本不合的訊息 (confilcting files) 時,可以使用這個引數來直接覆寫檔案,
危險性: 覆寫的動作是無法復原的!
所以,你必須要很清楚的知道被覆寫的檔案是真的可以被覆寫喔!否則會欲哭無淚!
–replacepkgs使用時機: 重新安裝某個已經安裝過的軟體!
如果你要安裝一堆 RPM 軟體檔案時,可以使用 rpm -ivh *.rpm ,
但若某些軟體已經安裝過了, 此時系統會出現『某軟體已安裝』的資訊,導致無法繼續安裝,
此時可使用這個選項來重復安裝喔!
–force使用時機: 這個引數其實就是 --replacefiles 與 --replacepkgs 的綜合體!
–test使用時機: 想要測驗一下該軟體是否可以被安裝到使用者的 Linux 環境當中,
可找出是否有屬性相依的問題,范例為:rpm -ivh pkgname.i386.rpm --test
–justdb使用時機: 由于 RPM 資料庫破損或者是某些緣故產生錯誤時,
可使用這個選項來更新軟體在資料庫內的相關資訊,
–nosignature使用時機: 想要略過數字簽名的檢查時,可以使用這個選項,
–prefix 新路徑使用時機: 要將軟體安裝到其他非正規目錄時,
舉例來說,你想要將某軟體安裝到 /usr/local而非正規的 /bin, /etc 等目錄,
就可以使用『–prefix /usr/local 』來處理了,
–noscripts使用時機: 不想讓該軟體在安裝程序中自行執行某些系統指令,
說明: RPM 的優點除了可以將檔案放置到定位之外,還可以自動執行一些前置作業的指令,
例如資料庫的初始化, 如果你不想要讓 RPM 幫你自動執行這一型別的指令,就加上他吧!

例題

在沒有網路的前提下,你想要安裝一個名為 pam-devel 的軟體,你手邊只有原版光碟,該如何是好?
	你可以透過掛載原版光碟來進行資料的查詢與安裝,請將原版光碟放入光驅,底下我們嘗試將光碟掛載到/mnt 當中, 
	并據以處理軟體的下載啰:
	1. 掛載光碟,使用: mount /dev/sr0 /mnt
	2. 找出檔案的實際路徑: find /mnt -name 'pam-devel*'
	3. 測驗此軟體是否具有相依性: rpm -ivh pam-devel... --test
	4. 直接安裝: rpm -ivh pam-devel...
	5. 卸除光碟: umount /mnt

22.2.3 RPM 升級與更新 (upgrade/freshen)

22.2.4 RPM 查詢 (query)

  • RPM 在查詢的時候,其實查詢的地方是在 /var/lib/rpm/ 這個目錄下的資料庫檔案啦!
[root@study ~]# rpm -qa 								<==已安裝軟體
[root@study ~]# rpm -q[licdR] 已安裝的軟體名稱 			<==已安裝軟體
[root@study ~]# rpm -qf 存在于系統上面的某個檔案名 			<==已安裝軟體
[root@study ~]# rpm -qp[licdR] 未安裝的某個檔案名 			<==查閱 RPM 檔案
選項與引數:
	查詢已安裝軟體的資訊:
		-q : query,查詢;
		-qa :query all,查詢所有已安裝在本機 Linux 的 RPM 格式的軟體;
		-qi :query information,查詢該軟體的詳細資訊,包括開發商、版本與說明等;
		-ql :query list,查詢該軟體包含的所有目錄及檔案;
		-qc :query config,查詢該軟體所有的組態檔 (找出在 /etc/ 底下的檔名而已)
		-qd :query description,查詢該軟體所有的說明檔案 (找出與 man 有關的檔案而已)
		-qR :query Required,查詢該軟體所依賴的軟體和檔案
		-qf :query father,由后面接的檔案名,找出該檔案屬于哪一個已安裝的軟體;
		-q --scripts:列出是否含有安裝后需要執行的腳本檔,可用以 debug 喔!
	
	查詢某個 RPM 檔案內含有的資訊:
		-qp[icdlR]:注意 -qp 后面接的所有引數以上面的說明一致,
			但用途僅在于找出某個 RPM 檔案內的資訊,而非已安裝的軟體資訊!注意!

范例一:找出你的 Linux 是否有安裝 logrotate 這個軟體?
	[root@study ~]# rpm -q logrotate
	logrotate-3.8.6-4.el7.x86_64
	[root@study ~]# rpm -q logrotating
	package logrotating is not installed
	# 注意到,系統會去找是否有安裝后面接的軟體名稱,注意,不必要加上版本喔!
	# 至于顯示的結果,一看就知道有沒有安裝啦!

范例二:列出上題當中, 屬于該軟體所提供的所有目錄與檔案:
	[root@study ~]# rpm -ql logrotate
	/etc/cron.daily/logrotate
	/etc/logrotate.conf
	....(以下省略)....
	# 可以看出該軟體到底提供了多少的檔案與目錄,也可以追蹤軟體的資料,

范例三:列出 logrotate 這個軟體的相關說明資料:
	[root@study ~]# rpm -qi logrotate
	Name : logrotate # 軟體名稱
	Version : 3.8.6 # 軟體的版本
	Release : 4.el7 # 釋出的版本
	Architecture: x86_64 # 編譯時所針對的硬體等級
	Install Date: Mon 04 May 2015 05:52:36 PM CST # 這個軟體安裝到本系統的時間
	Group : System Environment/Base # 軟體是放再哪一個軟體群組中
	Size : 102451 # 軟體的大小
	License : GPL+ # 釋出的授權方式
	Signature : RSA/SHA256, Fri 04 Jul 2014 11:34:56 AM CST, Key ID 24c6a8a7f4a80eb5
	Source RPM : logrotate-3.8.6-4.el7.src.rpm # 這就是 SRPM 的檔名
	Build Date : Tue 10 Jun 2014 05:58:02 AM CST # 軟體編譯打包的時間
	Build Host : worker1.bsys.centos.org # 在哪一部主機上面編譯的
	Relocations : (not relocatable)
	Packager : CentOS BuildSystem <http://bugs.centos.org>
	Vendor : CentOS
	URL : https://fedorahosted.org/logrotate/
	Summary : Rotates, compresses, removes and mails system log files
	Description : # 這個是詳細的描述!
	The logrotate utility is designed to simplify the administration of
	log files on a system which generates a lot of log files. Logrotate
	allows for the automatic rotation compression, removal and mailing of
	log files. Logrotate can be set to handle a log file daily, weekly,
	monthly or when the log file gets to a certain size. Normally,
	logrotate runs as a daily cron job.
	Install the logrotate package if you need a utility to deal with the
	log files on your system.
	# 列出該軟體的 information (資訊),里面的資訊可多著呢,包括了軟體名稱、
	# 版本、 開發商、 SRPM 檔案名、打包次數、 簡單說明資訊、 軟體打包者、
	# 安裝日期等等!如果想要詳細的知道該軟體的資料,用這個引數來了解一下

范例四:分別僅找出 logrotate 的組態檔與說明檔
	[root@study ~]# rpm -qc logrotate
	[root@study ~]# rpm -qd logrotate

范例五:若要成功安裝 logrotate ,他還需要什么檔案的幫忙?
	[root@study ~]# rpm -qR logrotate
	/bin/sh
	config(logrotate) = 3.8.6-4.el7
	coreutils >= 5.92
	....(以下省略)....
	# 由這里看起來,呵呵~還需要很多檔案的支持才行喔!

范例六:由上面的范例五,找出 /bin/sh 是那個軟體提供的?
	[root@study ~]# rpm -qf /bin/sh
	bash-4.2.46-12.el7.x86_64
	# 這個引數后面接的可是『 檔案』吶!不像前面都是接軟體喔!
	# 這個功能在查詢系統的某個檔案屬于哪一個軟體所有的,

范例七:假設我有下載一個 RPM 檔案,想要知道該檔案的需求檔案, 該如何?
	[root@study ~]# rpm -qpR filename.i386.rpm
	# 加上 -qpR ,找出該檔案需求的資料!

例題

1. 我想要知道我的系統當中,以 c 開頭的軟體有幾個,如何實做?
	rpm -qa | grep ^c | wc -l

2. 我的 WWW 服務器為 Apache ,我知道他使用的 RPM 軟體檔案名為 httpd ,現在,我想要知道這
個軟體的所有組態檔放置在何處,可以怎么作?
	rpm -qc httpd

3. 承上題,如果查出來的組態檔案已經被我改過,但是我忘記了曾經修改過哪些地方,所以想要直
接重新安裝一次該軟體,該如何作?
	假設該軟體在網路上的網址為:http://web.site.name/path/httpd-x.x.xx.i386.rpm
	則我可以這樣做:rpm -ivh http://web.site.name/path/httpd-x.x.xx.i386.rpm --replacepkgs

4. 如果我誤砍了某個重要檔案,例如 /etc/crontab,偏偏不曉得他屬于哪一個軟體,該怎么辦?
	雖然已經沒有這個檔案了,不過沒有關系,因為 RPM 有記錄在 /var/lib/rpm 當中的資料庫啊!
	所以直接下達:rpm -qf /etc/crontab,就可以知道是那個軟體啰!重新安裝一次該軟體即可!

22.2.5 RPM 驗證與數字簽名 (Verify/signature)

22.2.6 RPM 反安裝與重建資料庫 (erase/rebuilddb)

22.3 YUM 在線升級機制

22.4 SRPM 的使用:rpmbuild (Optional)

22.5 重點回顧

22.6 本章習題

22.7 參考資料與延伸閱讀

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/223451.html

標籤:其他

上一篇:Linux-基礎實用指令(不會還有人不知道吧)

下一篇:docker-容器操作

標籤雲
其他(157675) Python(38076) JavaScript(25376) Java(17977) C(15215) 區塊鏈(8255) C#(7972) AI(7469) 爪哇(7425) MySQL(7132) html(6777) 基礎類(6313) sql(6102) 熊猫(6058) PHP(5869) 数组(5741) R(5409) Linux(5327) 反应(5209) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4554) 数据框(4311) css(4259) 节点.js(4032) C語言(3288) json(3245) 列表(3129) 扑(3119) C++語言(3117) 安卓(2998) 打字稿(2995) VBA(2789) Java相關(2746) 疑難問題(2699) 细绳(2522) 單片機工控(2479) iOS(2429) ASP.NET(2402) MongoDB(2323) 麻木的(2285) 正则表达式(2254) 字典(2211) 循环(2198) 迅速(2185) 擅长(2169) 镖(2155) 功能(1967) .NET技术(1958) Web開發(1951) python-3.x(1918) HtmlCss(1915) 弹簧靴(1913) C++(1909) xml(1889) PostgreSQL(1872) .NETCore(1853) 谷歌表格(1846) Unity3D(1843) for循环(1842)

熱門瀏覽
  • 網閘典型架構簡述

    網閘架構一般分為兩種:三主機的三系統架構網閘和雙主機的2+1架構網閘。 三主機架構分別為內端機、外端機和仲裁機。三機無論從軟體和硬體上均各自獨立。首先從硬體上來看,三機都用各自獨立的主板、記憶體及存盤設備。從軟體上來看,三機有各自獨立的作業系統。這樣能達到完全的三機獨立。對于“2+1”系統,“2”分為 ......

    uj5u.com 2020-09-10 02:00:44 more
  • 如何從xshell上傳檔案到centos linux虛擬機里

    如何從xshell上傳檔案到centos linux虛擬機里及:虛擬機CentOs下執行 yum -y install lrzsz命令,出現錯誤:鏡像無法找到軟體包 前言 一、安裝lrzsz步驟 二、上傳檔案 三、遇到的問題及解決方案 總結 前言 提示:其實很簡單,往虛擬機上安裝一個上傳檔案的工具 ......

    uj5u.com 2020-09-10 02:00:47 more
  • 一、SQLMAP入門

    一、SQLMAP入門 1、判斷是否存在注入 sqlmap.py -u 網址/id=1 id=1不可缺少。當注入點后面的引數大于兩個時。需要加雙引號, sqlmap.py -u "網址/id=1&uid=1" 2、判斷文本中的請求是否存在注入 從文本中加載http請求,SQLMAP可以從一個文本檔案中 ......

    uj5u.com 2020-09-10 02:00:50 more
  • Metasploit 簡單使用教程

    metasploit 簡單使用教程 浩先生, 2020-08-28 16:18:25 分類專欄: kail 網路安全 linux 文章標簽: linux資訊安全 編輯 著作權 metasploit 使用教程 前言 一、Metasploit是什么? 二、準備作業 三、具體步驟 前言 Msfconsole ......

    uj5u.com 2020-09-10 02:00:53 more
  • 游戲逆向之驅動層與用戶層通訊

    驅動層代碼: #pragma once #include <ntifs.h> #define add_code CTL_CODE(FILE_DEVICE_UNKNOWN,0x800,METHOD_BUFFERED,FILE_ANY_ACCESS) /* 更多游戲逆向視頻www.yxfzedu.com ......

    uj5u.com 2020-09-10 02:00:56 more
  • 北斗電力時鐘(北斗授時服務器)讓網路資料更精準

    北斗電力時鐘(北斗授時服務器)讓網路資料更精準 北斗電力時鐘(北斗授時服務器)讓網路資料更精準 京準電子科技官微——ahjzsz 近幾年,資訊技術的得了快速發展,互聯網在逐漸普及,其在人們生活和生產中都得到了廣泛應用,并且取得了不錯的應用效果。計算機網路資訊在電力系統中的應用,一方面使電力系統的運行 ......

    uj5u.com 2020-09-10 02:01:03 more
  • 【CTF】CTFHub 技能樹 彩蛋 writeup

    ?碎碎念 CTFHub:https://www.ctfhub.com/ 筆者入門CTF時時剛開始刷的是bugku的舊平臺,后來才有了CTFHub。 感覺不論是網頁UI設計,還是題目質量,賽事跟蹤,工具軟體都做得很不錯。 而且因為獨到的金幣制度的確讓人有一種想去刷題賺金幣的感覺。 個人還是非常喜歡這個 ......

    uj5u.com 2020-09-10 02:04:05 more
  • 02windows基礎操作

    我學到了一下幾點 Windows系統目錄結構與滲透的作用 常見Windows的服務詳解 Windows埠詳解 常用的Windows注冊表詳解 hacker DOS命令詳解(net user / type /md /rd/ dir /cd /net use copy、批處理 等) 利用dos命令制作 ......

    uj5u.com 2020-09-10 02:04:18 more
  • 03.Linux基礎操作

    我學到了以下幾點 01Linux系統介紹02系統安裝,密碼啊破解03Linux常用命令04LAMP 01LINUX windows: win03 8 12 16 19 配置不繁瑣 Linux:redhat,centos(紅帽社區版),Ubuntu server,suse unix:金融機構,證券,銀 ......

    uj5u.com 2020-09-10 02:04:30 more
  • 05HTML

    01HTML介紹 02頭部標簽講解03基礎標簽講解04表單標簽講解 HTML前段語言 js1.了解代碼2.根據代碼 懂得挖掘漏洞 (POST注入/XSS漏洞上傳)3.黑帽seo 白帽seo 客戶網站被黑帽植入劫持代碼如何處理4.熟悉html表單 <html><head><title>TDK標題,描述 ......

    uj5u.com 2020-09-10 02:04:36 more
最新发布
  • 2023年最新微信小程式抓包教程

    01 開門見山 隔一個月發一篇文章,不過分。 首先回顧一下《微信系結手機號資料庫被脫庫事件》,我也是第一時間得知了這個訊息,然后跟蹤了整件事情的經過。下面是這起事件的相關截圖以及近日流出的一萬條資料樣本: 個人認為這件事也沒什么,還不如關注一下之前45億快遞資料查詢渠道疑似在近日復活的訊息。 訊息是 ......

    uj5u.com 2023-04-20 08:48:24 more
  • web3 產品介紹:metamask 錢包 使用最多的瀏覽器插件錢包

    Metamask錢包是一種基于區塊鏈技術的數字貨幣錢包,它允許用戶在安全、便捷的環境下管理自己的加密資產。Metamask錢包是以太坊生態系統中最流行的錢包之一,它具有易于使用、安全性高和功能強大等優點。 本文將詳細介紹Metamask錢包的功能和使用方法。 一、 Metamask錢包的功能 數字資 ......

    uj5u.com 2023-04-20 08:47:46 more
  • vulnhub_Earth

    前言 靶機地址->>>vulnhub_Earth 攻擊機ip:192.168.20.121 靶機ip:192.168.20.122 參考文章 https://www.cnblogs.com/Jing-X/archive/2022/04/03/16097695.html https://www.cnb ......

    uj5u.com 2023-04-20 07:46:20 more
  • 從4k到42k,軟體測驗工程師的漲薪史,給我看哭了

    清明節一過,盲猜大家已經無心上班,在數著日子準備過五一,但一想到銀行卡里的余額……瞬間心情就不美麗了。最近,2023年高校畢業生就業調查顯示,本科畢業月平均起薪為5825元。調查一出,便有很多同學表示自己又被平均了。看著這一資料,不免讓人想到前不久中國青年報的一項調查:近六成大學生認為畢業10年內會 ......

    uj5u.com 2023-04-20 07:44:00 more
  • 最新版本 Stable Diffusion 開源 AI 繪畫工具之中文自動提詞篇

    🎈 標簽生成器 由于輸入正向提示詞 prompt 和反向提示詞 negative prompt 都是使用英文,所以對學習母語的我們非常不友好 使用網址:https://tinygeeker.github.io/p/ai-prompt-generator 這個網址是為了讓大家在使用 AI 繪畫的時候 ......

    uj5u.com 2023-04-20 07:43:36 more
  • 漫談前端自動化測驗演進之路及測驗工具分析

    隨著前端技術的不斷發展和應用程式的日益復雜,前端自動化測驗也在不斷演進。隨著 Web 應用程式變得越來越復雜,自動化測驗的需求也越來越高。如今,自動化測驗已經成為 Web 應用程式開發程序中不可或缺的一部分,它們可以幫助開發人員更快地發現和修復錯誤,提高應用程式的性能和可靠性。 ......

    uj5u.com 2023-04-20 07:43:16 more
  • CANN開發實踐:4個DVPP記憶體問題的典型案例解讀

    摘要:由于DVPP媒體資料處理功能對存放輸入、輸出資料的記憶體有更高的要求(例如,記憶體首地址128位元組對齊),因此需呼叫專用的記憶體申請介面,那么本期就分享幾個關于DVPP記憶體問題的典型案例,并給出原因分析及解決方法。 本文分享自華為云社區《FAQ_DVPP記憶體問題案例》,作者:昇騰CANN。 DVPP ......

    uj5u.com 2023-04-20 07:43:03 more
  • msf學習

    msf學習 以kali自帶的msf為例 一、msf核心模塊與功能 msf模塊都放在/usr/share/metasploit-framework/modules目錄下 1、auxiliary 輔助模塊,輔助滲透(埠掃描、登錄密碼爆破、漏洞驗證等) 2、encoders 編碼器模塊,主要包含各種編碼 ......

    uj5u.com 2023-04-20 07:42:59 more
  • Halcon軟體安裝與界面簡介

    1. 下載Halcon17版本到到本地 2. 雙擊安裝包后 3. 步驟如下 1.2 Halcon軟體安裝 界面分為四大塊 1. Halcon的五個助手 1) 影像采集助手:與相機連接,設定相機引數,采集影像 2) 標定助手:九點標定或是其它的標定,生成標定檔案及內參外參,可以將像素單位轉換為長度單位 ......

    uj5u.com 2023-04-20 07:42:17 more
  • 在MacOS下使用Unity3D開發游戲

    第一次發博客,先發一下我的游戲開發環境吧。 去年2月份買了一臺MacBookPro2021 M1pro(以下簡稱mbp),這一年來一直在用mbp開發游戲。我大致分享一下我的開發工具以及使用體驗。 1、Unity 官網鏈接: https://unity.cn/releases 我一般使用的Apple ......

    uj5u.com 2023-04-20 07:40:19 more