$ cd ~ $ updatedb --output=$HOME/.tophy_locatedb --localpaths=`pwd` |
คำสั่งนี้จะสร้างไฟล์ ./tophy_locatedb ซึ่งเป็นไฟล์ฐานข้อมูลของไฟล์ทั้งหมดใน home directory ของเรา
$ locate -d ~/.tophy_locatedb Calymore |
คำสั่งนี้จะเป็นการค้นหาไฟล์ที่ชื่อ Claymore ในฐานข้อมูลที่เราสร้างขึ้น โดยปกติแล้วเราควรจะทำการ update ฐานข้อมูลทุกๆ วันซึ่งมักจะทำกันในช่วงเวลากลางคือด้วยการใช้คำสั่ง crontab (ไว้มีเวลาจะมาเขียนเรื่อง crontab)
$ locate Claymore |
เป็นการค้นหาไฟล์ที่ชื่อว่า Claymore โดยผลลัพธ์จะแสดงเป็น full path เช่น
/home/tophy/anime/Claymore /homt/tophy/OST/Claymore |
นอกจากจะหาจากคำเต็มๆ แล้วยังใช้อักขระ '*' เข้าช่วยในการค้นหาเหมือนคำสั่ง find ได้ด้วย เช่น
$locate "Claymore*" |
เป็นการหาไฟล์ใดๆ ที่ขึ้นต้นด้วยคำว่า Claymore
$locate "Claymore*" -q |
จะคล้ายกับคำสั่งด้านบนแต่ว่าจะไม่แสดง error message ขึ้นมา ถ้าเทียบกับคำสั่ง find แล้วจะคล้ายกับ 2>/dev/null
$ locate "*Claymore*" -n 10 |
จะเหมือนกับตัวอย่างที่ 2 แต่จะแสดงผลลัพธ์ออกมาแค่ 10 รายการเท่านั้น
$ locate "*Claymore*" -i |
จะหาไฟล์ที่ขึ้นต้นด้วยคำว่า Claymore โดยไม่สนใจอักขระตัวเล็กตัวใหญ่ (non-case sensitive) นอกจากตัวอย่างที่ยกมาแล้ว locate ยังมี parameter อีกตัวหนึ่งที่น่าสนใจมากคือ -r ซึ่งเป็นการใช้ regular expression มาใช้งานในการค้นหาไฟล์ เช่น
$locate -r "/Claymore.*\.avi" |
เป็นคำสั่งที่ใช้ค้นหาไฟล์ที่ขึ้นต้นด้วยคำว่า Claymore และจบลงด้วยคำว่า .avi เช่น
Claymore [raw] - 01.avi Claymore [raw] - 02.avi |
Credit : http://www.secguru.com,
http://are.berkeley.edu,
http://www.codecoffee.com/tipsforlinux/articles/20.html
ref: http://top85.spaces.live.com/blog/cns!D84A636C1EFDB724!230.entry
No comments:
Post a Comment