การหาข้อความในไฟล์ต่าง ๆ บนระบบลินุกซ์

  Moodle find grep "Unknown parameter type: 0"  

พอดีเจอปัญหาที่แสดงข้อความผิดพลาด "Unknown parameter type: 0" ในระบบ Moodle ขณะที่ต้องการเพิ่มแหล่งข้อมูล  อันดับแรกจึงเริ่มแก้ปัญหาโดยการหาไฟล์ที่มีข้อความผิดพลาดนี้ 

หากเราต้องการหาไฟล์ที่มีคำสำคัญ (keyword) ว่า "Unknown parameter" ในไฟล์ต่าง ๆ ใต้ไดเร็กทอรี่ Moodle แต่เราไม่ทราบว่ามันอยู่ที่ไฟล์ใด

เราสามารถจะใช้คำสั่ง

find . | xargs grep 'Unknown parameter'

ซึ่งคำสั่งนี้จะทำให้คอมพิวเตอร์หาไฟล์ต่าง ๆ ใต้ไดเรกทอรี่ปัจจุบัน (.) จากนั้นให้หาคำว่า 'Unknown parameter' ในไฟล์ต่าง ๆ เหล่านั้น

จากการใช้คำสั่งนี้จึงพบว่าข้อผิดพลาด 'Unknown parameter type: 0" เขียนไว้ที่ไฟล์ moodlelib.php  ดังนั้นจึงไม่ถูกต้อง จึงไปโหลด moodlelib.php ใหม่แล้วเก็บไว้ที่เซิร์ฟเวอร์ ซึ่งปรากฎว่าก็ทำให้แก้ปัญหานี้ได้

 

บันทึกนี้เขียนที่ GotoKnow โดย  ใน เรียนรู้เทคโนโลยีคอมพิวเตอร์

คำสำคัญ (Tags)#uncategorized

หมายเลขบันทึก: 17829, เขียน: 07 Mar 2006 @ 09:50, แก้ไข, 11 Feb 2012 @ 14:30, สัญญาอนุญาต: สงวนสิทธิ์ทุกประการ, ความเห็น: 6, อ่าน: คลิก
บันทึกล่าสุด


ความเห็น (6)

chatpong
IP: xxx.12.97.118
เขียนเมื่อ 09 Mar 2006 @ 08:40

ที่จริงเราสามารถใช้คำสั่ง

grep 'Unknown parameter' *

ได้เลยนะครับ ซึ่งค่าโดยปริยายจะเป็นการค้นหาแบบ Case Sensitive  แต่ในบางทีเราอาจต้องการค้นหาแบบ Case Insensitive เราก็สามารถทำได้โดยใช้พารามิเตอร์ -i ครับ

grep -i 'Unknown parameter' *

IP: xxx.12.97.120
เขียนเมื่อ 11 Mar 2006 @ 10:25

ถ้าเราใช้ grep 'Unknown parameter' * จะหาได้เฉพาะจากไฟล์ในไดเรกทอรี่ปัจจุบัน แต่ไม่สามารถหาไฟล์ที่อยู่ใต้ไดเรกทอรี่ปัจจุบันได้

แต่ถ้าเราใช้คำสั่ง find . | grep 'Unknown parameter' 

เราสามารถหาไฟล์ที่มีคำสำคัญได้จากไฟล์ใด  ๆ ที่อยู่ในไดเรกทอรี่ปัจจุบันและอยู่ใต้ไดเรกทอรี่ปัจจุบันค่ะ 

chatpong
IP: xxx.47.247.117
เขียนเมื่อ 09 Apr 2006 @ 22:33

อ๋อครับ ปกติแล้ว ผมไม่แทบจะไม่ใ้ช้คำสั่ง find เลยครับ ส่วนมากจะใช้

 du -a |grep 'Unknow parameter'

 ซึ่งจะให้ผลลัพธ์เช่นเดียวกับ

find . |grep 'Unknow parameter'

 

IP: xxx.12.97.116
เขียนเมื่อ 10 Apr 2006 @ 00:27
-type f -exec grep <คำที่ต้องการค้นหา> {} /dev/null ; อย่างเช่น ต้องการค้นหา king60 ในไฟล์ที่อยู่ใต้รูทไดเรกทอรี joomla find joomla -type f -exec grep king60 {} ; อ้างอิงจาก http://www.cs.utk.edu/~plank/plank/classes/cs494/494/notes/Cat/lecture.html
IP: xxx.12.97.116
เขียนเมื่อ 02 Jun 2006 @ 18:00
find /home/cs494 -type f -exec grep schizoid {} ;
find /home/cs494 -type f -exec grep schizoid {} \;