熱搜:win11繞過硬件限制安裝 一鍵重裝Win10系統(tǒng) 最干凈的u盤啟動盤 真正純凈版的win7系統(tǒng)
時間:2014-12-04 10:34:34 作者:qipeng 來源:系統(tǒng)之家 1. 掃描二維碼隨時看資訊 2. 請使用手機瀏覽器訪問: https://m.xitongzhijia.net/xtjc/20141204/31867.html 手機查看 評論 反饋
查當(dāng)前目錄下的所有普通文件
# find 。 -type f -exec ls -l {} \;
-rw-r–r– 1 root root 34928 2003-02-25 。/conf/httpd.conf
-rw-r–r– 1 root root 12959 2003-02-25 。/conf/magic
-rw-r–r– 1 root root 180 2003-02-25 。/conf.d/README
查當(dāng)前目錄下的所有普通文件,并在- e x e c選項中使用ls -l命令將它們列出
=================================================
在/ l o g s目錄中查找更改時間在5日以前的文件并刪除它們:
$ find logs -type f -mtime +5 -exec -ok rm {} \;
=================================================
查詢當(dāng)天修改過的文件
。踨oot@book class]# find 。/ -mtime -1 -type f -exec ls -l {} \;
=================================================
查詢文件并詢問是否要顯示
。踨oot@book class]# find 。/ -mtime -1 -type f -ok ls -l {} \;
《 ls … 。/classDB.inc.php 》 ? y
-rw-r–r– 1 cnscn cnscn 13709 1月 12 12:22 。/classDB.inc.php
。踨oot@book class]# find 。/ -mtime -1 -type f -ok ls -l {} \;
《 ls … 。/classDB.inc.php 》 ? n
[root@book class]#
=================================================
查詢并交給awk去處理
。踨oot@book class]# who | awk ’{print $1”\t“$2}’
cnscn pts/0
=================================================
awk—grep—sed
。踨oot@book class]# df -k | awk ‘{print $1}’ | grep -v ’none’ | sed s”/\/dev\///g“
文件系統(tǒng)
sda2
sda1
。踨oot@book class]# df -k | awk ‘{print $1}’ | grep -v ’none’
文件系統(tǒng)
/dev/sda2
/dev/sda1
1)在/tmp中查找所有的*.h,并在這些文件中查找“SYSCALL_VECTOR”,最后打印出所有包含“SYSCALL_VECTOR”的文件名
A) find /tmp -name “*.h” | xargs -n50 grep SYSCALL_VECTOR
B) grep SYSCALL_VECTOR /tmp/*.h | cut -d’:‘ -f1| uniq 》 filename
C) find /tmp -name “*.h” -exec grep “SYSCALL_VECTOR” {} \; -print
2)find / -name filename -exec rm -rf {} \;
find / -name filename -ok rm -rf {} \;
3)比如要查找磁盤中大于3M的文件:
find 。 -size +3000k -exec ls -ld {} ;
4)將find出來的東西拷到另一個地方
find *.c -exec cp ‘{}’ /tmp ‘;’
如果有特殊文件,可以用cpio,也可以用這樣的語法:
find dir -name filename -print | cpio -pdv newdir
6)查找2004-11-30 16:36:37時更改過的文件
# A=`find 。/ -name “*php”` | ls -l –full-time $A 2》/dev/null | grep “2004-11-30 16:36:37”
Linux-all, Linux | No Comments »
find 實例
要在/usr/linux中查找所有的*.h,并在這些文件中查找“SYSCALL_VECTOR“,最后打印出所有包含”SYSCALL_VECTOR“的文件名,有以下幾種方法實現(xiàn)
find /usr/linux -name ”*.h“ | xargs -n50 grep SYSCALL_VECTOR
grep SYSCALL_VECTOR /usr/linux/*.h | cut -d’:’ -f1 | uniq 》 filename
find /usr/linux -name ”*.h“ -exec grep ”SYSCALL_VECTOR“ {} \; -print
我用find / -name filename| rm -rf,不成功,請問為什么不成功?
find / -name filename -exec rm -rf {} \;
find 。 -name filename |rm -rf試一下{} 表示你找出來的結(jié)果。
\; 則相當(dāng)于“憲法”,沒什么說頭,就是這么規(guī)定的,在 -exec 后面需要一個表示該命令終結(jié)的的符號。可以在 man find 中找到答案。
要讓rm識別find的結(jié)果,如下:
find / -name filename |xargs rm -rf
之所以find 。 -name filename |rm -rf不通過,是因為rm命令不接受從標(biāo)準(zhǔn)輸入傳過來的指令
查找含特定字符串的文件
例如查找當(dāng)前目錄下含有”the string you want find…“字符串的文件:
$find 。 -type f -exec grep “the string you want find…” {} ; -print
從根目錄開始查tmpfile,一旦查到馬上刪除
find / -name ”tmpfile“ -exec rm {} \;
find 的perm問題
請問一下以下命令什么意思?關(guān)鍵是那個數(shù)字前的-,其他都還知道
find -name ”.*“ -perm -007
我知道
find -name ”.*“ -perm 755
這個是用來查找權(quán)限位為755的隱藏文件
噢,對了還有,我上邊的命令都省略了find的pathname參數(shù) find默認是查找當(dāng)前工作目錄的嗎?
如果我用 -ok 替代 -exec, 那么還需要加上 {} \; 嗎?
這個已經(jīng)清楚,仍然需要,因為 -ok 只是 -exec 的提示模式,它只是多了一個確認操作的步驟,剛才沒有讀懂那幾句E文的意思 呵呵 不好意思
-007是指查找所有用戶都可讀、寫、執(zhí)行的文件,要小心呀~~~
解釋解釋?
find -name ”.*“ -perm -007 和 find -name ”.*“ -perm 777 有區(qū)別嗎?
-007是怎么來得呢?
不過有一個問題
我用 find 。 -perm -100 會列出當(dāng)前目錄 。 , 這是為什么呢?
下面引用由explover在 2002/10/01 06:15am 發(fā)表的內(nèi)容:
-007是指查找所有用戶都可讀、寫、執(zhí)行的文件,要小心呀~~~
-007是查找含其它用戶(不同組,非屬主)可讀,寫,執(zhí)行的文件。并不一定要同組可讀寫,-是指最少權(quán)限為007.
下面引用由一顆小白菜在 2002/10/01 10:16am 發(fā)表的內(nèi)容:
OK了, 呵呵
不過有一個問題
我用 find 。 -perm -100 會列出當(dāng)前目錄 。 , 這是為什么呢?
這種方法不會準(zhǔn)確的找出目錄的。 -100是指權(quán)限至少是屬主可運行。
在unix系統(tǒng)下,你可以擁有對目錄文件的執(zhí)行權(quán)你才可以進入一個目錄。這便是目錄文件被列出的原因。
find 。 -perm -001 -print找到往往是目錄文件。
我的意思當(dāng)然不是使用這種方法來找目錄,只不過不明白其中的 -100 意義了
那以此類推,是不是 -010是指權(quán)限至少是owner同組可執(zhí)行的嗎?也就是說其實這里的010和-是分開的,-表示一個至少的意思,而且010才是真正用來描述權(quán)限位的?
這樣子就明白了 謝謝你噢
將find出來的東西拷到另一個地方?
find *.c -exec cp ‘{}’ /tmp ‘;’
如果有特殊文件,可以用cpio,也可以用這樣的語法:
find dir -name filename -print | cpio -pdv newdir
找出磁盤中某個大小范圍內(nèi)的文件
比如要查找磁盤中大于3M的文件:
find 。 -size +3000k -exec ls -ld {} ;
發(fā)表評論
共0條
評論就這些咯,讓大家也知道你的獨特見解
立即評論以上留言僅代表用戶個人觀點,不代表系統(tǒng)之家立場