在Linux系統中,壓縮文件並進行快速搜索是常見的操作。本文將介紹三個關鍵命令:tar、grep和find,它們分別負責打包壓縮、文本搜索和文件查找。雖然這僅需3條命令,但它們的功能強大且參數眾多。首先,tar命令用於打包和解壓文件,有多種格式可供選擇,如.tar、.tar.gz或.tar.bz2。使用tar時,需注意參數如-c(創建壓縮)、-x(解壓)和-v(顯示進度)的正確組合。劉遄老師的建議是,打包命令如"tar -czvf 壓縮包名稱.tar.gz 要打包的目錄",解壓則用"tar -xzvf 壓縮包名稱.tar.gz"。
grep命令是文本搜索工具,常用於在文件中搜索關鍵詞,如"-n"顯示行號和"-v"反向選擇。在Linux的/etc/passwd文件中,可以使用grep查找禁止登錄的用戶信息。find命令則根據指定條件在文件系統中查找文件,如查找名稱、許可權、時間等。例如,find /etc -name "host*" 可以找到所有/etc目錄下以"host"開頭的文件,而find / -perm -4000 則能找出所有具有SUID許可權的文件。
進階實驗中,要找出所有歸屬於linuxprobe用戶的文件並復制到/root/findresults目錄,可以使用find命令的-exec參數,如"find / -user linuxprobe -exec cp -a {} /root/findresults/ \;"。
這三者雖看似復雜,但熟練掌握後,對於文件管理和系統維護來說,它們是不可或缺的工具。通過這些命令,我們可以高效地管理和搜索文件,提高Linux操作的效率。
⑵ linux怎樣查找文件
linux中文件查找命令有很多,一般文件分類為兩種,一種是應用程序,即二進制文件,一種是文檔,即文本文件。對於前者,我們一般使用whereis、which等命令,對於後者,我們習慣使用find命令,當然find命令是linux是最強大的文件搜索命令。下面簡單的介紹了這幾個命令的用法。
命令1:which
"which 命令" 查找且只能查找命令所在目錄
例如:which ls
命令2:whereis
"whereis 命令" 查找且只能查找命令所在目錄 + 幫助文檔位置
whereis 命令
命令位置+幫助文檔位置
命令3:find
"find 路徑 查找方式 參數" 可以查找任何文件
查找方式有很多種:
1.根據文件名查找
查找方式:-name
例如: find /t3 -name file1
註:文件名可以用通配符
* 多個字元
? 單個字元
例如:find /t3 -name fil*
2.根據文件大小查找
查找方式:-size(單位數據塊512位元組,即0.5kb)
+1000
-1000
=1000
例如:find /t3 -name -1000
3.根據文件的所有者查找
查找方式:-user
例如:find /t3 -user xhc
4.根據文件的所屬組查找
查找方式:-group
例如:find /t3 -group greenday
5.根據最後修改時間查找
查找方式:-ctime、-atime、-mtime 以天為單位
查找方式:-cmin、-amin、-mmin 以分鍾為單位
c改變 指文件屬性,指許可權、所屬組、所有者改變過
a訪問
m修改 指文件內容修改過
參數:
+ 超過多長時間
- 多少時間之內
什麼都不寫 剛好
例如:find /t3 -mmin -120
6.根據文件類型找
查找方式:-type
例如:find /t3 -type d
7.根據i節點查找
查找方式:-inum
例如:find /t3 -inum 14
8.多重條件
-a 邏輯與
-o 邏輯或
例如:find -size +80 -a -size -100
4.查找後操作
固定格式:find xxx -exec 命令 {} \;
例如:find /t3 -mmin -120 -exec ls -l {} \; 查找兩小時內被修改過的文件並列出詳細信息
locate
updatedb
grep
例子:grep ftp 文件名a 輸出a文件中包含ftp的行