檔案文字查詢

2021-08-10 19:52:31 字數 2606 閱讀 8210

grep, egrep, fgrep: 文字查詢

檔案查詢

locate:

非實時,模糊匹配,查詢是根據全系統檔案資料庫進行的;

# updatedb, 手動生成檔案資料庫

速度快find

實時精確

支援眾多查詢標準

遍歷指定目錄中的所有檔案完成查詢,速度慢;

find:

find dirictory cretiria action

匹配條件:

-type

f, d, c, b, l, s, p

-atime [+|-]

-amin

-size [+|-] 11m

10m<

-user

-uid

-nouser

-nogroup

-name

-iname

-regex 

組合條件:

-a-o

-not

\( \)

action

-print

-ls-ok

-exec

find 查詢路徑 查詢標準 查詢到以後的處理運作

查詢路徑:預設為當前目錄

查詢標準:預設為指定路徑下的所有檔案

處理運作:預設為顯示

匹配標準:

-name 'filename':對檔名作精確匹配

檔名通配:

*:任意長度的任意字元?

-iname 'filename': 檔名匹配時不區分大小寫

-regex pattern:基於正規表示式進行檔名匹配

-user username: 根據屬主查詢

-group groupname: 根據屬組查詢

-uid uid: 根據uid查詢

-gid gid: 根據gid查詢

-nouser:查詢沒有屬主的檔案

-nogroup: 查詢沒有屬組的檔案

-type 

f: 普通檔案dc

blps

-size [+|-]

#k#m

#g組合條件:

-a-o

-not 

/tmp目錄,不是目錄,並且還不能套接字型別的檔案

/tmp/test目錄下,屬主不是user1,也不是user2的檔案;

-mtime

-ctime

-atime

[+|-]#

-mmin

-cmin

-amin

[+|-]#

-perm mode:精確匹配

/mode: 任意一位匹配即滿足條件

-mode: 檔案許可權能完全包含此mode時才符合條件

-644

644: rw-r--r--

755: rwxr-xr-x

750: rwxr-x---

find ./ -perl -001

運作:

-print: 顯示

-ls:類似ls -l的形式顯示每乙個檔案的詳細

-ok command {} \; 每一次操作都需要使用者確認

-exec command {} \;

例子:

1、查詢/var目錄下屬主為root並且屬組為mail的所有檔案;

find /var -user root -group mail

2、查詢/usr目錄下不屬於root,bin,或student的檔案;

find /usr -not -user root -a -not -user bin -a -not -user student

find /usr -not \( -user root -o -user bin -o -user student \)

3、查詢/etc目錄下最近一周內內容修改過且不屬於root及student使用者的檔案;

find /etc -mtime -7 -not \ ( -user root -o -user student \)

find /etc -mtime -7 -not -user root -a -not -user student

4、查詢當前系統上沒有屬主或屬組且最近1天內曾被訪問過的檔案,並將其屬主屬組均修改為root;

find / \( -nouser -o -nogroup \) -a -atime -1 -exec chown root:root {} \; 

5、查詢/etc目錄下大於1m的檔案,並將其檔名寫入/tmp/etc.largefiles檔案中;

find /etc -size +1m >> /tmp/etc.largefiles

6、查詢/etc目錄下所有使用者都沒有寫許可權的檔案,顯示出其詳細資訊;

find /etc -not -perm /222 -ls

基於大文字檔案的文字讀取查詢

一 1 本地磁碟讀取大檔案 可能是本地記事本打不開的文字檔案 並獲取需要的某個資料,顯示一共有多少條資料 大資料文字瀏覽器 public static int getline throws filenotfoundexception,ioexception line fin.close sc.clo...

python 查詢文字檔案的層次

i o系統有一系列的層次構建而成 下面是操作乙個文字檔案的例子來檢視這種層次 f open sample.txt w f sample.txt mode w encoding utf 8 f.buffer io.bufferedwriter name sample.txt f.buffer raw ...

python 查詢文字檔案的層次

i o系統有一系列的層次構建而成 下面是操作乙個文字檔案的例子來檢視這種層次 f open sample.txt w f f.buffer io.bufferedwriter name sample.txt f.buffer.raw io.fileio name sample.txt mode wb...