(已解決 歡迎大家來分享對grep的用法) Linux有沒有指令可以下關鍵字搜尋檔案的"內容"? [論壇 - Ubuntu 程式設計]


正在瀏覽:   1 名遊客


 到底部   前一個主題   下一個主題  [無發表權] 請登錄或者註冊

(1) 2 »


(已解決 歡迎大家來分享對grep的用法) Linux有沒有指令可以下關鍵字搜尋檔案的"內容"?
會員二級
註冊日期:
2012/6/27 20:43
所屬群組:
已註冊使用者
等級: 8
HP : 0 / 176
MP : 27 / 5811
EXP: 6
離線
各位大大好~

小弟原本想透過PHP的讀檔來搜尋該檔案內是否有我想要的關鍵字

但當檔案一多的時候,效能方面來說非常的差

我的想法是 如果我可以透過Linux的指令下關鍵字去搜尋檔案

效能上應該會比透過PHP讀檔還快

小弟只知道locate & find可以搜尋"檔名"

不知道有沒有指令可以搜尋"檔案的內容"呢?

還煩請各位大大幫忙~<(_ _)>

2013/1/6 16:58
應用擴展 工具箱
回覆: Linux有沒有指令可以下關鍵字搜尋檔案的"內容"?
管理員
註冊日期:
2011/3/11 6:32
所屬群組:
討論區管理群
等級: 44
HP : 216 / 1084
MP : 1088 / 39794
EXP: 38
離線
kfind 應該可以

附件:



png  螢幕擷圖存為 2013-01-06 17:06:58.png (73.53 KB)
24266_50e93ece37d0c.png 764X504 px

2013/1/6 17:07
應用擴展 工具箱
回覆: Linux有沒有指令可以下關鍵字搜尋檔案的"內容"?
會員二級
註冊日期:
2012/6/27 20:43
所屬群組:
已註冊使用者
等級: 8
HP : 0 / 176
MP : 27 / 5811
EXP: 6
離線
感謝大大的回覆!!

我也找到了一個grep的指令

我來測試這兩個指令看看~

2013/1/6 17:09
應用擴展 工具箱
回覆: (已解決) Linux有沒有指令可以下關鍵字搜尋檔案的"內容"?
會員二級
註冊日期:
2012/6/27 20:43
所屬群組:
已註冊使用者
等級: 8
HP : 0 / 176
MP : 27 / 5811
EXP: 6
離線
kfind似乎要安裝

小弟就沒測試了~

感謝大大回覆~

2013/1/6 19:10
應用擴展 工具箱
回覆: Linux有沒有指令可以下關鍵字搜尋檔案的"內容"?
會員五級
註冊日期:
2010/9/26 16:05
所屬群組:
已註冊使用者
等級: 27
HP : 0 / 660
MP : 317 / 25128
EXP: 43
離線
迷途小書僮 寫到:
感謝大大的回覆!!

我也找到了一個grep的指令

我來測試這兩個指令看看~


grep是正解
例如:

grep -rl "keyword" /home/user

可以找出/home/user目錄底下,所有內容有"keyword"的檔案名

通常,能用指令完成的事,效能肯定會比用圖型介面的套件來得快

2013/1/6 19:19
應用擴展 工具箱
回覆: Linux有沒有指令可以下關鍵字搜尋檔案的"內容"?
管理員
註冊日期:
2011/3/11 6:32
所屬群組:
討論區管理群
等級: 44
HP : 216 / 1084
MP : 1088 / 39794
EXP: 38
離線
andyfang 寫到:
通常,能用指令完成的事,效能肯定會比用圖型介面的套件來得快

不過忘掉用法的話效能是 0 :P

2013/1/6 19:45
應用擴展 工具箱
回覆: (已解決) Linux有沒有指令可以下關鍵字搜尋檔案的"內容"?

註冊日期:
2009/12/6 10:32
所屬群組:
已註冊使用者
等級: 71
HP : 1053 / 1756
MP : 4456 / 70893
EXP: 24
離線
grep -rl "keyword" /home/user

我對 grep 指令不熟悉
所以 常常倒過來用 比較不會 忘記
sudo ls -alR /home/user | grep keyword

sudo ls -alR /home/user | grep "keyword"
這樣 包含 隱藏檔 在內

不要包含隱藏檔 就把 a 拿掉

2013/1/6 19:55
應用擴展 工具箱
回覆: (已解決) Linux有沒有指令可以下關鍵字搜尋檔案的"內容"?
會員二級
註冊日期:
2012/6/27 20:43
所屬群組:
已註冊使用者
等級: 8
HP : 0 / 176
MP : 27 / 5811
EXP: 6
離線
哇~沒想到grep還有很多種用法~

希望熟grep的人可以來分享自己常用或是好用的用法~

2013/1/6 21:23
應用擴展 工具箱
回覆: (已解決) Linux有沒有指令可以下關鍵字搜尋檔案的"內容"?
會員五級
註冊日期:
2010/9/26 16:05
所屬群組:
已註冊使用者
等級: 27
HP : 0 / 660
MP : 317 / 25128
EXP: 43
離線
poloshiao 寫到:
grep -rl "keyword" /home/user

我對 grep 指令不熟悉
所以 常常倒過來用 比較不會 忘記
sudo ls -alR /home/user | grep keyword

sudo ls -alR /home/user | grep "keyword"
這樣 包含 隱藏檔 在內

不要包含隱藏檔 就把 a 拿掉


Polo大,你的解
得到的會是所有檔案中含有「keyword的該行內容」

而我所提:grep -rl "keyword" /home/user
得到的是所有檔案中,含有「keyword的檔案名稱」

略有差別,二者不同,不知小書僮需要的是何者

2013/1/6 22:14
應用擴展 工具箱
回覆: (已解決) Linux有沒有指令可以下關鍵字搜尋檔案的"內容"?
管理員
註冊日期:
2010/5/7 5:46
所屬群組:
已註冊使用者
討論區管理群
等級: 31
HP : 0 / 755
MP : 434 / 29592
EXP: 23
離線
andyfang 寫到:
poloshiao 寫到:
grep -rl "keyword" /home/user

我對 grep 指令不熟悉
所以 常常倒過來用 比較不會 忘記
sudo ls -alR /home/user | grep keyword

sudo ls -alR /home/user | grep "keyword"
這樣 包含 隱藏檔 在內

不要包含隱藏檔 就把 a 拿掉


Polo大,你的解
得到的會是所有檔案中含有「keyword的該行內容」

而我所提:grep -rl "keyword" /home/user
得到的是所有檔案中,含有「keyword的檔案名稱」

略有差別,二者不同,不知小書僮需要的是何者

Polo的解其實只有找檔名而已
小書僮要的是"顯示檔案內容有某個關鍵字"
另外我試過
sudo ls -alR /home/user | grep -rl "keyword"
sudo ls -lR /home/user | grep -rl "keyword"
sudo ls -lR /home/user | grep -rl "keyword" /home/user/file
ls -alR /home/user | grep -rl "keyword"
ls -lR /home/user | grep -rl "keyword"
ls -lR /home/user | grep -rl "keyword" /home/user/file
在grep有下參數的情況下,會把前面的ls忽略掉,也就是ls -alR和指定的資料夾都無效
會改以後面的grep為主

2013/1/6 22:52
應用擴展 工具箱

(1) 2 »

 [無發表權] 請登錄或者註冊


可以查看帖子.
不可發帖.
不可回覆.
不可編輯自己的帖子.
不可刪除自己的帖子.
不可發起投票調查.
不可在投票調查中投票.
不可上傳附件.
不可不經審核直接發帖.