find,用于在文件樹(shù)中查找文件并作相應(yīng)的處理
上饒網(wǎng)站制作公司哪家好,找成都創(chuàng)新互聯(lián)公司!從網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站建設(shè)、微信開(kāi)發(fā)、APP開(kāi)發(fā)、成都響應(yīng)式網(wǎng)站建設(shè)公司等網(wǎng)站項(xiàng)目制作,到程序開(kāi)發(fā),運(yùn)營(yíng)維護(hù)。成都創(chuàng)新互聯(lián)公司從2013年創(chuàng)立到現(xiàn)在10年的時(shí)間,我們擁有了豐富的建站經(jīng)驗(yàn)和運(yùn)維經(jīng)驗(yàn),來(lái)保證我們的工作的順利進(jìn)行。專注于網(wǎng)站建設(shè)就選成都創(chuàng)新互聯(lián)公司。
-name:按照文件名查找文件
-perm:按照文件權(quán)限查找文件
-user:按照文件屬主來(lái)查找文件
-size:按照指定的文件大小查找文件【+n:大于,-n:小于,n:等于】
-group:按照文件所屬的組來(lái)查找文件
-mtime-n+n:按照文件更改時(shí)間來(lái)查找文件,-n表示n天之內(nèi),+n表示n天以前
-newer file1 file2:查找更改時(shí)間在file1和file2之間的文件
例如:
find -mtime -2:查找48小時(shí)修改過(guò)的文件
find -name ".log":查找當(dāng)前目錄以".log"結(jié)尾的文件
find /opt/soft/test -perm 777:查找指定目錄下權(quán)限為777的文件
find -type f -name "*.log":查找當(dāng)前目錄下以".log"結(jié)尾的普通文件
find -type d | sort:查找當(dāng)前所有目標(biāo)目錄并排序
find /home/wansw -size +20M:查找大于20M的文件
locate指令,可以快速定位文件路徑,利用事先建立的系統(tǒng)中的所有文件名稱和路徑的locate數(shù)據(jù)庫(kù),無(wú)需遍歷整個(gè)文件系統(tǒng),查詢速度較快,為了保證查詢準(zhǔn)確性,需要定期更新?!禠inux就該這么學(xué)》
updatedb:第一次運(yùn)行前,創(chuàng)建locate數(shù)據(jù)庫(kù)
grep,用于過(guò)濾/搜索指定字符串??梢允褂谜齽t表達(dá)式,能配合多種命令使用。
用法:grep 【選項(xiàng)】 查找內(nèi)容 源文件
-A:顯示符合的行及之后的內(nèi)容
-B:顯示符合的行及之前的內(nèi)容
-C:顯示符合的行及前后的內(nèi)容
-c:計(jì)算符合的行數(shù)目
-n:顯示匹配行和行號(hào)
-i:忽略大小寫(xiě)
規(guī)則表達(dá)式
:'grep'表示匹配所有以grep開(kāi)頭的行
'表示匹配所有以grep結(jié)尾的行
.:'gr.p'表示匹配'gr'后面接任意字符然后是'p'
:'grep'表示匹配一個(gè)或多個(gè)空格后緊跟grep的行
[]:[Gg]rep表示匹配Grep與grep
[]:[A-FH-Z]rep表示匹配不以A-F、H-Z開(kāi)頭并緊跟rep的行
例如(grep命令大多數(shù)時(shí)候多要和別的命令一起使用才有意義):
ps -ef | grep -c SVN:查找指定的進(jìn)程的個(gè)數(shù)
cat test.txt | grep -f test2.txt:從text2.txt中讀取關(guān)鍵字后在test.txt中搜索
cat test.txt | grep nf text2.txt:從text2.txt中讀取關(guān)鍵字后在text.txt中搜索并顯示行號(hào)
grep 'linux' text.txt test2.txt:從多個(gè)文件中搜索關(guān)鍵字'linux'
cat test.txt | grep -E 'ed|at':顯示包含ed或at的行
1、linux命令如果記不得,可以使用man命令來(lái)查看某個(gè)命令的使用。但對(duì)應(yīng)初學(xué)者往往看不懂或者不知道什么場(chǎng)景下使用
2、輸入find -name *history,意思是查詢當(dāng)前目錄及子目錄下所有以history結(jié)尾的文件
3、輸入find -name mysql*,意思是查詢當(dāng)前目錄及子目錄下所有以mysql開(kāi)頭的文件
4、輸入find -name mysql* -o -name *history,中間加個(gè)-o表示或的意思,就是以mysql開(kāi)頭或history結(jié)尾的文件
5、上面是例子沒(méi)有搜索目錄,默認(rèn)是當(dāng)前目錄下,可以加上目錄位置來(lái)指定特地的目錄下搜索
6、有時(shí)候經(jīng)常會(huì)需要查詢最近10分鐘修改過(guò)的文件,則可以輸入find -mmin -10命令來(lái)查詢
7、最后介紹下,在系統(tǒng)磁盤(pán)不足的情況下,需要清理大的垃圾臨時(shí)文件時(shí),如搜索大于100M的文件,find -type f -size +100M ?-print0 | xargs -0 du -h,結(jié)果如圖所示
擴(kuò)展資料
Linux簡(jiǎn)介:
Linux是一套免費(fèi)使用和自由傳播的類Unix操作系統(tǒng),是一個(gè)基于POSIX和UNIX的多用戶、多任務(wù)、支持多線程和多CPU的操作系統(tǒng)。它能運(yùn)行主要的UNIX工具軟件、應(yīng)用程序和網(wǎng)絡(luò)協(xié)議。它支持32位和64位硬件。Linux繼承了Unix以網(wǎng)絡(luò)為核心的設(shè)計(jì)思想,是一個(gè)性能穩(wěn)定的多用戶網(wǎng)絡(luò)操作系統(tǒng)。
Linux操作系統(tǒng)誕生于1991 年10 月5 日(這是第一次正式向外公布時(shí)間)。Linux存在著許多不同的Linux版本,但它們都使用了Linux內(nèi)核。Linux可安裝在各種計(jì)算機(jī)硬件設(shè)備中,比如手機(jī)、平板電腦、路由器、視頻游戲控制臺(tái)、臺(tái)式計(jì)算機(jī)、大型機(jī)和超級(jí)計(jì)算機(jī)。
嚴(yán)格來(lái)講,Linux這個(gè)詞本身只表示Linux內(nèi)核,但實(shí)際上人們已經(jīng)習(xí)慣了用Linux來(lái)形容整個(gè)基于Linux內(nèi)核,并且使用GNU工程各種工具和數(shù)據(jù)庫(kù)的操作系統(tǒng)。
參考資料來(lái)源:百度百科:Linux簡(jiǎn)介
linux中查找文件位置的命令有很多,常用的有find,locate和whereis三個(gè)命令,下面分別介紹它們的用法:
1、find命令是linux中最強(qiáng)大的查找文件的命令,它的格式為”find? 指定目錄 指定條件 指定動(dòng)作“。比如使用find命令搜索在根目錄下的所有interfaces文件所在位置,命令格式為”find / -name ?'interfaces'”,輸入后就會(huì)返回搜索的結(jié)果了:
2、第二個(gè)命令是locate命令,使用locate也可以搜索到linux系統(tǒng)中的文件,同樣的這里使用locate命令搜索interfaces文件,命令為”locate interfaces“,locate命令是比f(wàn)ind命令快的,因?yàn)樗樵兊氖莑ocatedb數(shù)據(jù)庫(kù),該數(shù)據(jù)庫(kù)包含本地所有的文件信息:
3、最后一個(gè)是使用”whereis“命令搜索文件,但是只可以搜索linux系統(tǒng)中的可執(zhí)行文件。這里用whereis搜索interfaces文件就不起作用了,所以使用whereis命令搜索grep的可執(zhí)行文件,其命令為”whereis grep“。以上就是linux中查找文件的命令的用法介紹:
linux下vim查找命令:
/text--查找text,按n查找下一個(gè),N查找上一個(gè)
?text--查找text(反向查找),按n查找下一個(gè),N查找上一個(gè)
*/#--查找光標(biāo)當(dāng)前的單詞,相當(dāng)于/text
:setignorecase--查找忽略大小寫(xiě)
:setnoignorecase--查找不忽略大小寫(xiě)
:nohlsearch--關(guān)閉當(dāng)前的高亮顯示,當(dāng)再次查找時(shí)恢復(fù)高亮
:setincsearch--逐步搜索模式,對(duì)當(dāng)前鍵入的字符進(jìn)行查找,不必等輸入完成
:setwrapscan--重新搜索,當(dāng)搜索到文件頭或尾時(shí),返回重新搜索
擴(kuò)展資料:
1、文件窗口:
:openfile--在當(dāng)前窗口打開(kāi)新文件
:splitfile--在新窗口打開(kāi)文件
:newfile--用新窗口打開(kāi)文件,同:splitfile
:bn--切換到下一個(gè)文件
:bp--切換到上一個(gè)文件
:args--查看當(dāng)前打開(kāi)的文件列表(當(dāng)前正在編輯的文件會(huì)用[]括起來(lái))
:e
:e\qadriveest.txt--打開(kāi)遠(yuǎn)程文件
:split--打開(kāi)一個(gè)新窗口,光標(biāo)停在頂層的窗口上
:new--打開(kāi)一個(gè)新窗口,光標(biāo)停在頂層的窗口上
:vsplit--橫向打開(kāi)窗口。
Ctrl+ww--移動(dòng)到下一個(gè)窗口
Ctrl+wj--移動(dòng)到下方的窗口
Ctrl+wk--移動(dòng)到上方的窗口
2、其他命令:
Esc/Ctrl+[--鍵入命令
:!command--執(zhí)行shell命令
:suspend/Ctrl+Z--掛起vim,回到shell,fg返回vim
:!perl-cscript.pl--檢查perl腳本語(yǔ)法,不用退出vim
:!perlscript.pl--執(zhí)行perl腳本,不用退出vim
:help--顯示幫助文檔
:helpi--顯示i的幫助文檔(:特殊鍵用,-t:啟動(dòng)參數(shù)用-)
3、編輯命令:
插入:
i--在當(dāng)前位置插入
A--在當(dāng)前行尾插入
I--在當(dāng)前行首插入
o--在當(dāng)前行后插入一行
O--在當(dāng)前行前插入一行
拷貝粘貼剪切:
yy--拷貝當(dāng)前行
2yy--拷貝當(dāng)前行開(kāi)始的2行
p--在當(dāng)前光標(biāo)后粘貼
P--在當(dāng)前行前粘貼
:1,10co20--將1-10行插入到第20行之后。
:1,$co$--將整個(gè)文件復(fù)制一份并添加到文件尾部
v--進(jìn)入選擇模式,相當(dāng)于在Windows下按住Shift選擇
V--進(jìn)入選擇模式,整行選擇
ddp--交換當(dāng)前行和其下一行
2dd--剪切當(dāng)前行之后的2行
:1,10d--將1-10行剪切
:1,10m20--將第1-10行移動(dòng)到第20行之后
替換:
ra--將當(dāng)前光標(biāo)所在字符替換為a
s/old/new/--用old替換new,替換當(dāng)前行的第一個(gè)匹配
s/old/new/g--用old替換new,替換當(dāng)前行的所有匹配
%s/old/new/--用old替換new,替換所有行的第一個(gè)匹配
%s/old/new/g--用old替換new,替換所有匹配
:10,20s/^/text/g--在第10行到第20行每行前面加上text(:3,5s/^/#/g--注釋3-5行,:3,5s/^#//g
--解除3-5行的注釋,:1,$s/^/#/g--注釋整個(gè)文檔,:%s/^/#/g--注釋整個(gè)文檔)
ddp--交換光標(biāo)所在行和下一行
移動(dòng):
h--左移一個(gè)字符(5h--左移5個(gè)字符)
l--右移一個(gè)字符(5l--右移5個(gè)字符)
k--上移一個(gè)字符(5k--上移5個(gè)字符)
j--下移一個(gè)字符(5j--下移5個(gè)字符)
w--向后移動(dòng)一個(gè)單詞(5w--向后移動(dòng)5個(gè)單詞)
b--向前移動(dòng)一個(gè)單詞(5b--向前移動(dòng)5個(gè)單詞)
e--同w,光標(biāo)停在單詞尾部
ge--同e,光標(biāo)停在單詞尾部
^--移動(dòng)到本行第一個(gè)非空白字符
0--移動(dòng)到本行第0個(gè)字符
--同0
$--移動(dòng)到行尾(3$--移動(dòng)到下面3行的行尾)
gg--移動(dòng)到文件頭(10gg--移動(dòng)到第10行首)
[[--同gg
G--移動(dòng)到文件尾(10G--移動(dòng)到第10行尾)
]]--同G
fx--移動(dòng)到本行光標(biāo)后第一個(gè)為x的字符(3fx--移動(dòng)到本行光標(biāo)后第3個(gè)為x的字符)
Fx--同fx,反向查找
:20--跳到20行行首
Ctrl+e--向下滾動(dòng)一行
Ctrl+y--向上滾動(dòng)一行
Ctrl+d--向下滾動(dòng)半屏
Ctrl+u--向上滾動(dòng)半屏
Ctrl+f--向下滾動(dòng)一屏
Ctrl+b--向上滾動(dòng)一屏
撤銷:
u--撤銷
U--撤銷對(duì)整行的操作
Ctrl+r--撤銷剛才的撤銷
刪除:
x--刪除當(dāng)前字符(3x--刪除當(dāng)前光標(biāo)開(kāi)始向后三個(gè)字符)
X--刪除當(dāng)前字符的前一個(gè)字符,同dh
dl--刪除當(dāng)前字符,同x
dh--刪除前一個(gè)字符
dd--刪除當(dāng)前行
dj--刪除上一行
dk--刪除下一行
10d--刪除當(dāng)前行開(kāi)始的10行。
D--刪除當(dāng)前字符至行尾,同d$
kdgg--刪除當(dāng)前行之前所有行(不包括當(dāng)前行)
:1,10d--刪除1-10行
:11,$d--刪除11行及以后所有的行
:1,$d--刪除所有行
J--刪除兩行之間的空行,合并兩行
退出
:wq--保存并退出
ZZ--保存并退出
:q!--強(qiáng)制退出并忽略所有更改
:e!--放棄所有修改,并打開(kāi)原來(lái)文件
:close--關(guān)閉窗口,最后一個(gè)窗口不能使用此命令,可以防止意外退出vim
:q--如果是最后一個(gè)被關(guān)閉的窗口,那么將退出vim