Unix ls command ที่มักจะใช้
- แสดงแบบสั้นๆ (-a = all คือเอา file ที่ขึ้นด้วยจุดออกมา . )
$ ls
$ ls -a
- แบบแสดงรายละเอียด
$ ls -l
$ ls -la
- แบบแสดงรายละเอียด และให้คนอ่านง่าย (-h=human-readable)
$ ls -lh
- แบบแสดงรายละเอียด และเรียงตามวันที่ (-t=time, -tr=time reverse จากน้อยไปหามาก)
$ ls -lt
$ ls -ltr
- แสดง sub directory ออกมาทั้งหมด (-R-recursive)
$ ls -R
การหาคำใน file (Find text in file) แบบง่ายๆ
บ่อยครั้งที่เรา มักจะมีการหาคำบางคำในแฟ้มข้อมูลต่างๆ
$ grep ‘text search‘ fileLocation/fileType
ตัวอย่าง 1 หาคำว่า “user” ใน file ที่มีนามสกุล rb ทุก file ที่อยู่ตำแหน่งปัจจุบัน (. = current directory)
$ grep ‘user’ ./*.rb
ตัวอย่างที่ 2 หาคำว่า ‘train’ ใน file ทุกประเภทใน path /home/user1/bookstore/prj/migrate (~ = home directory)
$ grep ‘train’ ~/bookstore/prj/migrate/*.*
output
FileName textSearch
textSearch: จะแสดงทุกบรรทัดที่มี textSearch ออกมา โดยแสดงทั้งบรรทัด
ถ้าต้องการให้แสดงเฉพาะชื่อ file อย่างเดียวใช้ เพิ่ม “| cut -d: -f1″ ด้านท้ายประโยค
$ grep ‘user’ ~/bookstore/prj/db/migrate/*.* | cut -d: -f1
output
FileName
การค้นหาชื่อ file แบบง่ายๆ
$ find directory -name ‘fileType‘ | grep text
ตัวอย่างที่ 1 ค้นหา file ที่มีชื่อ ‘production.log’ ใน current directory และ sub directory ด้วย
$ find -name ‘production.log’
ตัวอย่างที่ 2 ค้นหา file ที่มีชื่อ ‘production.log’ ใน root และ directory ของ root ด้วย
$ find / -name ‘production.log’
ตัวอย่างที่ 3 ค้นหา file ที่มีชื่อขึ้นต้น ‘product’ ใน current directory และ sub directory ด้วย
$ find -name ‘product*’
ตัวอย่างที่ 4 ค้นหา file ที่มี file size มากกว่า 50000k ใน current directory และ sub directory ด้วย
$ find -name ‘*’ -size +50000k
$ find . -size +50000k -print
ตัวอย่างที่ 5 ค้นหาทุก file ใน directory และ sub directory “/home” ที่มี owner เป็น user ที่ชื่อ byte
$ find /home -user byte
ตัวอย่างที่ 6 ค้นหาทุก file ใน directory และ sub directory “/home” ที่มีการแก้ไขเกิน 60 วัน
$ find /home -mtime +60
$ find /home -mtime 0
0=file ที่มีการแก้ไขไม่เกิน 24 ชั่วโมง
ตัวอย่างที่ 7 ค้นหาทุก file core ใน directory และ sub directory “/tmp” และให้ลบ file ออกไป
$ find /tmp -name core -type f -print | xargs /bin/rm -f