grep命令:
橋西網(wǎng)站建設(shè)公司成都創(chuàng)新互聯(lián),橋西網(wǎng)站設(shè)計(jì)制作,有大型網(wǎng)站制作公司豐富經(jīng)驗(yàn)。已為橋西超過千家提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\外貿(mào)網(wǎng)站建設(shè)要多少錢,請(qǐng)找那個(gè)售后服務(wù)好的橋西做網(wǎng)站的公司定做!
grep命令是非常重要的命令,可以對(duì)文本進(jìn)行查找和搜索
常用參數(shù)如下:
常用實(shí)例:
1、在多個(gè)文件中查找:
grep "file" file_1 file_2 file_3
2、輸出除之外的所有行 -v 選項(xiàng):
grep -v "file" file_name
3、標(biāo)記匹配顏色 --color=auto 選項(xiàng):
grep "file" file_name --color=auto
4、使用正則表達(dá)式 -E 選項(xiàng):
grep -E "[1-9]+"
egrep "[1-9]+"
5、只輸出文件中匹配到的部分 -o 選項(xiàng):
echo this is a test line. | grep -o -E "[a-z]+."
line.
echo this is a test line. | egrep -o "[a-z]+."
line.
6、統(tǒng)計(jì)文件或者文本中包含匹配字符串的行數(shù)-c 選項(xiàng):
grep -c "text" file_name
2
7、輸出包含匹配字符串的行數(shù) -n 選項(xiàng):
grep "text" -n file_name
或
cat file_name | grep "text" -n
8、多個(gè)文件
grep "text" -n file_1 file_2
9、搜索多個(gè)文件并查找匹配文本在哪些文件中:
grep -l "text" file1 file2 file3...
10、grep遞歸搜索文件
在多級(jí)目錄中對(duì)文本進(jìn)行遞歸搜索:
grep "text" . -r -n
11、忽略匹配樣式中的字符大小寫:
echo "hello world" | grep -i "HELLO"
hello
12、選項(xiàng) -e 指定多個(gè)匹配樣式:
echo this is a text line | grep -e "is" -e "line" -o
is
line
13、也可以使用 -f 選項(xiàng)來匹配多個(gè)樣式,在樣式文件中逐行寫出需要匹配的字符。
cat patfile
aaa
bbb
echo aaa bbb ccc ddd eee | grep -f patfile -o
14、在grep搜索結(jié)果中包括或者排除指定文件:
只在目錄中所有的.php和.html文件中遞歸搜索字符"main()"
grep "main()" . -r --include *.{php,html}
15、在搜索結(jié)果中排除所有README文件
grep "main()" . -r --exclude "README"
16、在搜索結(jié)果中排除filelist文件列表里的文件
grep "main()" . -r --exclude-from filelist
touch abc.txt 創(chuàng)建一個(gè)名為abc.txt的文件
touch -r 指定文件時(shí)間與參考文件相同
touch -t 201608012234.55[yyyymmddhhmm.ss] abc.txt 更改文件為指定的時(shí)間
touch temp 創(chuàng)建一個(gè)名為temp的文件
vi編輯器有三種模式,命令行模式、編輯模式、底行模式。
vi 文件名進(jìn)入命令行模式,Insert進(jìn)入編輯模式,編輯完成Esc退出編輯模式,:wq進(jìn)入底行模式并保存修改,:q直接退出保存。
tar命令用于打包壓縮文件,常用的壓縮命令還有bzip2,gzip
bunzip2 file1.bz2 解壓一個(gè)叫做 'file1.bz2'的文件
bzip2 file1 壓縮一個(gè)叫做 'file1' 的文件
gunzip file1.gz 解壓一個(gè)叫做 'file1.gz'的文件
gzip file1 壓縮一個(gè)叫做 'file1'的文件
gzip -9 file1 最大程度壓縮
rar a file1.rar test_file 創(chuàng)建一個(gè)叫做 'file1.rar' 的包
rar a file1.rar file1 file2 dir1 同時(shí)壓縮 'file1', 'file2' 以及目錄 'dir1'
rar x file1.rar 解壓rar包
unrar x file1.rar 解壓rar包
tar -cvf archive.tar file1 創(chuàng)建一個(gè)非壓縮的 tarball
tar -cvf archive.tar file1 file2 dir1 創(chuàng)建一個(gè)包含了 'file1', 'file2' 以及 'dir1'的檔案文件
tar -tf archive.tar 顯示一個(gè)包中的內(nèi)容
tar -xvf archive.tar 釋放一個(gè)包
tar -xvf archive.tar -C /tmp 將壓縮包釋放到 /tmp目錄下
tar -cvfj archive.tar.bz2 dir1 創(chuàng)建一個(gè)bzip2格式的壓縮包
tar -xvfj archive.tar.bz2 解壓一個(gè)bzip2格式的壓縮包
tar -cvfz archive.tar.gz dir1 創(chuàng)建一個(gè)gzip格式的壓縮包
tar -xvfz archive.tar.gz 解壓一個(gè)gzip格式的壓縮包
zip file1.zip file1 創(chuàng)建一個(gè)zip格式的壓縮包
zip -r file1.zip file1 file2 dir1 將幾個(gè)文件和目錄同時(shí)壓縮成一個(gè)zip格式的壓縮包
unzip file1.zip 解壓一個(gè)zip格式壓縮包
which命令用于用戶查找命令所有路徑
命令格式
file命令用于獲取文件屬性
命令格式
file 文件名或目錄名
命令示例:
使用說明
命令格式:cat [-AbeEnstTuv] [--help] [--version] fileName
cat file1 從第一個(gè)字節(jié)開始正向查看文件的內(nèi)容
-n 或 --number:由 1 開始對(duì)所有輸出的行數(shù)編號(hào)。
-b 或 --number-nonblank:和 -n 相似,只不過對(duì)于空白行不編號(hào)。
-s 或 --squeeze-blank:當(dāng)遇到有連續(xù)兩行以上的空白行,就代換為一行的空白行。
-v 或 --show-nonprinting:使用 ^ 和 M- 符號(hào),除了 LFD 和 TAB 之外。
-E 或 --show-ends : 在每行結(jié)束處顯示 $。
-T 或 --show-tabs: 將 TAB 字符顯示為 ^I。
-A, --show-all:等價(jià)于 -vET。
-e:等價(jià)于"-vE"選項(xiàng);
-t:等價(jià)于"-vT"選項(xiàng);
使用示例
把 textfile1 的文檔內(nèi)容加上行號(hào)后輸入 textfile2 這個(gè)文檔里
cat -n textfile1 textfile2
把 textfile1 和 textfile2 的文檔內(nèi)容加上行號(hào)(空白行不加)之后將內(nèi)容附加到 textfile3 文檔里
cat -b textfile1 textfile2 textfile3
清空 /etc/test.txt 文檔內(nèi)容
cat /dev/null /etc/test.txt
tac [filename]
從最后一行開始反向查看一個(gè)文件的內(nèi)容,ac與cat命令剛好相反,文件內(nèi)容從最后一行開始顯示,可以看出 tac 是 cat 的倒著寫。
nl [-bnw] 文件
選項(xiàng)與參數(shù):
-b: 指定行號(hào)指定的方式,主要有兩種:
-b a :表示不論是否為空行,也同樣列出行號(hào)(類似 cat -n);
-b t :如果有空行,空的那一行不要列出行號(hào)(默認(rèn)值);
-n :列出行號(hào)表示的方法,主要有三種:
-n ln :行號(hào)在熒幕的最左方顯示;
-n rn :行號(hào)在自己欄位的最右方顯示,且不加 0 ;
-n rz :行號(hào)在自己欄位的最右方顯示,且加 0 ;
-w :行號(hào)欄位的占用的位數(shù)。
more file1 查看一個(gè)長文件的內(nèi)容,支持一頁一頁翻動(dòng)
運(yùn)行的時(shí)候,支持以下幾個(gè)按鍵:
空白鍵 (space):代表向下翻一頁;
Enter :代表向下翻『一行』;
/字串 :代表在這個(gè)顯示的內(nèi)容當(dāng)中,向下搜尋『字串』這個(gè)關(guān)鍵字;
:f :立刻顯示出檔名以及目前顯示的行數(shù);
q :代表立刻離開 more ,不再顯示該文件內(nèi)容。
b 或 [ctrl]-b :代表往回翻頁,不過這動(dòng)作只對(duì)文件有用,對(duì)管線無用。
less file1 類似于 'more' 命令,但是它允許在文件中和正向操作一樣的反向操作
less運(yùn)行時(shí)可以輸入的命令有:
空白鍵 :向下翻動(dòng)一頁;
[pagedown]:向下翻動(dòng)一頁;
[pageup] :向上翻動(dòng)一頁;
/字串 :向下搜尋『字串』的功能;
?字串 :向上搜尋『字串』的功能;
n :重復(fù)前一個(gè)搜尋 (與 / 或 ? 有關(guān)!)
N :反向的重復(fù)前一個(gè)搜尋 (與 / 或 ? 有關(guān)!)
q :離開 less 這個(gè)程序;
head [-n number]
head -2 file1 查看一個(gè)文件的前兩行
tail [-n number]
tail -2 file1 查看一個(gè)文件的最后兩行
tail -f /var/log/messages 實(shí)時(shí)查看被添加到一個(gè)文件中的內(nèi)容
文件權(quán)限列中三位為一組,分別代表相關(guān)的用戶、組、其它用戶的權(quán)限
權(quán)限列中三位為一組,分別代表相關(guān)的用戶、組、其它用戶的權(quán)限
所以修改權(quán)限可以分別修改或一同修改,系統(tǒng)中權(quán)限分為數(shù)字權(quán)限與字符權(quán)限
數(shù)字權(quán)限:r=4,w=2,x=1
字符權(quán)限:+ 增加 -去除 a取消所有加上給定的
修改權(quán)限的命令chmod,命令格式:
chmod 權(quán)限 文件名或目錄名 修改權(quán)限格式
chmod -R 權(quán)限 目錄名 遞歸將目錄及其下面所有內(nèi)容權(quán)限全部修改
chown 改變文件或目錄的屬主(所有者)
chown 用戶名 文件名或目錄名
chown 用戶名.組名 文件名或目錄名
修改所屬組也可用chgrp 命令來完成
當(dāng)你用ls -l 查看到文件的屬主、屬組為數(shù)字時(shí),就表明該文件的創(chuàng)建用戶已被刪除。
文件的特殊權(quán)限
chattr +i(-i) 文件名 鎖定文件(取消鎖定)不可刪除與清空
chattr +a(-a) 文件名 添加內(nèi)容(只可添加內(nèi)容)
使用lsattr 文件名 查看文件的特殊權(quán)限
由此可以看出
root用戶默認(rèn)創(chuàng)建的目錄權(quán)限是755,文件權(quán)限是644
普通用戶默認(rèn)創(chuàng)建的目錄權(quán)限是775,文件權(quán)限是664
這也是系統(tǒng)默認(rèn)的比較安全的權(quán)限分配,其實(shí)這些默認(rèn)權(quán)限全部都是由umask值來決定的
系統(tǒng)規(guī)定了
文件的權(quán)限值是從666開始計(jì)算(默認(rèn)權(quán)限=權(quán)限值-umask值)
目錄的權(quán)限值是從777開始計(jì)算(默認(rèn)權(quán)限=權(quán)限值-umask值)
文件1的權(quán)限=444 (666-232=434——43(3+1)4)
1."linux查找文件路徑,為您提供linux查找文件路徑圖文信息,打開linux系統(tǒng),在linux的桌面的空白處右擊。
2.在彈出的下拉選項(xiàng)里,點(diǎn)擊打開終端。
3.輸入find/-name+文件名,回車運(yùn)行,即可顯示文件所在路徑。
4.輸入locate+文件名,可以找到所有包含此文件名的文件。
1、打開shell連接工具,連接上服務(wù)器,pwd查看當(dāng)前目錄,一般進(jìn)來默認(rèn)在主目錄下。
2、通過命令:cd /切換到主目錄下,然后pwd查看當(dāng)前目錄,并用ls可以查看當(dāng)前目錄下的文件及目錄。
3、假如要找一個(gè)nginx配置文件nginx.conf,那么可以通過find命令查找:find . -name 'nginx.conf'。
4、假如不知道文件的具體名字只是模糊記得幾個(gè)關(guān)鍵的單詞,那么就可以通過模糊匹配去搜索:find 目錄 -name '*nginx*' 查找即可。
1、最強(qiáng)大的搜索命令:find 查找各種文件的命令
2、在文件資料中查找文件:locate
3、搜索命令所在的目錄及別名信息:which
4、搜索命令所在的目錄及幫助文檔路徑:whereis
5、在文件中搜尋字符串匹配的行并輸出:grep
6、分頁顯示一個(gè)文件或任何輸出結(jié)果:more
7、分頁顯示一個(gè)文件并且可以回頭:less
8、指定顯示前多少行文件內(nèi)容:head
9、指定顯示文件后多少行內(nèi)容:tail
10、查看一個(gè)文件:cat
11、查看文件內(nèi)容多少字符多少行多少字節(jié):wc
12、排序文件內(nèi)容:sort
一、根據(jù) 文件或目錄名稱 搜索
find 【搜索目錄】【-name或者-iname】【搜索字符】:-name和-iname的區(qū)別一個(gè)區(qū)分大小寫,一個(gè)不區(qū)分大小寫
eg:在/etc 目錄下搜索名字為init的文件或目錄
①、find /etc -name init (精準(zhǔn)搜索,名字必須為 init 才能搜索的到)
②、find /etc -iname init (精準(zhǔn)搜索,名字必須為 init或者有字母大寫也能搜索的到)
③、find /etc -name *init (模糊搜索,以 init 結(jié)尾的文件或目錄名)
④、find /etc -name init??? (模糊搜索,? 表示單個(gè)字符,即搜索到 init___)
二、根據(jù) 文件大小 搜索
eg:在根目錄下查找大于 100M 的文件
find / -size +204800
這里 +n 表示大于,-n 表示小于,n 表示等于
1 數(shù)據(jù)塊 == 512 字節(jié) 0.5KB,也就是1KB等于2數(shù)據(jù)塊
100MB == 102400KB204800數(shù)據(jù)塊
三、根據(jù) 所有者和所屬組 搜索
①、在home目錄下查詢所屬組為 root 的文件
find /home -group root
②、在home目錄下查詢所有者為 root 的文件
find /home -user root
四、根據(jù) 時(shí)間屬性 搜索
find 【路徑】【選項(xiàng)】【時(shí)間】
選項(xiàng)有下面三種:-amin 訪問時(shí)間
-cmin 文件屬性被更改
-mmin 文件內(nèi)容被修改
時(shí)間:+n,-n,n分別表示超過n分鐘,n分鐘以內(nèi)和n分鐘
eg:在 /etc 目錄下查找5 分鐘內(nèi)被修改過屬性的文件和目錄
find /etc -cmin -5
五、根據(jù) 文件類型或i節(jié)點(diǎn) 搜索
-type 根據(jù)文件類型查找:
f表示文件,d表示目錄,l表示軟鏈接
eg:查找 /home 目錄下文件類型是目錄的
find /home -type d
-inum 根據(jù)i節(jié)點(diǎn)查找
eg:查找 /tmp 目錄下i節(jié)點(diǎn)為400342的文件或目錄
find /tmp -inum 400342
六、組合條件 搜索
這里有兩個(gè)參數(shù):
①、-a 表示兩個(gè)條件同時(shí)滿足(and)
②、-o 表示兩個(gè)條件滿足任意一個(gè)即可(or)
范例:查找/etc目錄下大于80MB同時(shí)小于100MB的文件
find /etc -size +163840 -a -size -204800
語法:locate【文件名】 -i 不區(qū)分大小寫
注意:這里和 find 命令是有區(qū)別的,find是全盤檢索,而locate 是在文件資料庫中進(jìn)行搜索。所以locate命令的執(zhí)行要比find命令執(zhí)行速度快很多。但是這里有個(gè)問題,文件資料庫是需要不斷更新的。我們新創(chuàng)建的文件如果不更新 文件資料庫,使用 locate 是查找不到的。
updatedb 手動(dòng)更新資料庫,但是對(duì)于/tmp目錄下的新建文件,是更新不到文件資料庫的,因?yàn)?tmp目錄不屬于文件資料庫的收錄范圍。
eg:locate hcf
功能描述:搜索命令所在的目錄及別名信息
語法:which【命令】
eg:which ls
功能描述:搜索命令所在的目錄及幫助文檔路徑
語法:whereis【命令】
eg:whereis ls
功能描述:在文件中搜尋字符串匹配的行并輸出
語法:grep -iv 【指定字符串】【文件】
-i 不區(qū)分大小寫
-v 排除指定字符串
eg:查找 /root/install.log 文件中包含 mysql 字符串的行,并輸出
grep mysql /root/install.log
本搜索工具,根據(jù)用戶指定的模式,對(duì)目標(biāo)文件逐行進(jìn)行匹配檢查,打印匹配到的行
grep是在文件中搜索匹配的字符串,是在文件中進(jìn)行內(nèi)容搜索,這個(gè)命令后面用到的比較多
描述:
分頁顯示一個(gè)文件或任何輸出結(jié)果
用于查看純文本文件(較長的)格式
格式:
more[選項(xiàng)] 文件
less 與 more 類似,但使用 less 可以隨意瀏覽文件,而 more 僅能向前移動(dòng),卻不能向后移動(dòng),而且 less 在查看之前不會(huì)加載整個(gè)文件。
head[必要參數(shù)][選擇參數(shù)][文件]
用于顯示指定文件開始多少行內(nèi)容
命令參數(shù):
-n 10 顯示前10行
-n -10 正常輸出但不顯示最后的10行
eg:顯示new.txt的前兩行內(nèi)容
head -n 2 new.txt
head -2 new.txt
tail[必要參數(shù)][選擇參數(shù)][文件]
用于顯示指定文件末尾多少行內(nèi)容
命令參數(shù):
-n 10 顯示后面10行
-f 持續(xù)刷新顯示的內(nèi)容
eg:顯示new.txt的末尾兩行內(nèi)容
tail -n 2 new.txt
tail -2 new.txt
eg:指定從第二行開始顯示
tail -n +2 new.txt
描述:一次顯示整個(gè)文件內(nèi)容
cat 命令 用于查看純文本文件(較短)
cat [選項(xiàng)] [文件]…
描述:wc 命令默認(rèn)情況下會(huì)打印換行符數(shù)、單詞數(shù)和字符數(shù)。
用法:wc [選項(xiàng)] [文件]
用法:sort [選項(xiàng)] [文件]
轉(zhuǎn)自: Linux下文件搜索、查找、查看命令_黃小小的博客-CSDN博客_linux 搜索
本文名稱:找文件的命令linux,尋找文件指令
本文鏈接:http://chinadenli.net/article38/hohcpp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供域名注冊、網(wǎng)站收錄、企業(yè)建站、Google、定制網(wǎng)站、網(wǎng)站設(shè)計(jì)公司
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)