นี่คือตัวอย่างบางส่วนที่เราสามารถใช้ประโยชน์จากเมื่อเราใช้ประโยชน์ได้ หาคำสั่งสำหรับค้นหาไฟล์หรือโฟลเดอร์
หากต้องการความช่วยเหลือสำหรับการรันคำสั่ง:
man find
ในการออกจากคู่มือเพียงแค่กดปุ่ม [Q] (ใช้ได้กับคู่มือใด ๆ )
ในตัวอย่างต่อไปนี้จุด (.) หลังการค้นหา (find.) หมายความว่าเรากำลังค้นหาในโฟลเดอร์ที่พรอมต์ระบุ สามารถใช้แทนพา ธ ที่ถูกต้องเช่น / home /
Ejemplos:
เพียงค้นหาไฟล์ที่มีรูปแบบ
find . -type f -name "*.deb"
ค้นหาและคัดลอกไปที่ / home / pepe /
find . -type f -name "*.deb" -exec cp -f {} /home/pepe/ \;
ค้นหาไฟล์ Thumbs.db และลบออก
find . -type f -name "Thumbs.db" -exec rm -f {} \;
สร้างไฟล์ข้อความบริสุทธิ์ด้วยไฟล์ md5 ในไดเร็กทอรี
find . -type f -print0 | xargs -0 -n 1 md5sum >> md5.txt
ลบโฟลเดอร์. svn ที่น่ารำคาญ
find | grep "\.svn$" | xargs rm -fr
แทนที่ข้อความหนึ่งด้วยอีกข้อความ
find -type f | xargs sed -i "s/TEXTO/OTRO/g" *.php
ค้นหาไฟล์ที่อัปเดตถึงวันที่แล้ว
find /var/log/[a-z]* \*.sql -mtime +1
ในการสร้างไฟล์ md5sums ของแพ็คเกจ DEB:
find . -type f ! -regex ‘.*\.hg.*’ ! -regex ‘.*?debian-binary.*’ ! -regex ‘.*?DEBIAN.*’ -printf ‘%P ‘ | xargs md5sum > DEBIAN/md5sums
ลบไฟล์ทั้งหมดที่ไม่ใช่. txt (เห็นได้ชัดว่า. txt เป็นอะไรก็ได้)
หา. ! - ชื่อ "* .txt" -exec rm {} \;
ค้นหาโดยไม่คำนึงถึงตัวพิมพ์เล็กและใหญ่:
หา. - ชื่อ« * foobar * »
หมายเหตุ: คำสั่ง -exec ไม่สามารถดำเนินการกับพารามิเตอร์ -iname
ยอดเยี่ยม😉คำสั่งนี้ควรต้องรู้ก่อนที่ฉันจะกลัวตัวเลือกที่มีอยู่ใน 'มนุษย์' เพื่อให้สามารถทำการค้นหาได้ แต่ให้โอกาสฉันได้เห็นว่ามันทรงพลังเพียงใดเมื่อต้องพบสิ่งที่ฉันลืม บนฮาร์ดไดรฟ์ของฉัน😐
Find มีประโยชน์อย่างแน่นอนโดยเฉพาะอย่างยิ่งสำหรับการจัดการกับชื่อไฟล์ที่มีช่องว่างและอักขระที่ผิดปกติอื่น ๆ ตัวอย่างเช่นฉันจำได้ว่าครั้งหนึ่งฉันไม่สามารถจัดการบีบอัดชุดของไดเร็กทอรีได้จนกว่าฉันจะใช้ find กับ xargs (ซึ่งเร็วกว่า -exec มาก) และปัญหาได้รับการแก้ไข
อีกวิธีหนึ่งที่ฉันต้องการสำหรับคำสั่ง find คือการเปลี่ยนสิทธิ์ซ้ำ ๆ :
find . -type d -print0 | xargs -0 chmod 755
find . -type f -print0 | xargs -0 chmod 644
น่าสนใจ ^ _ ^
ไอคอนจักระดูเท่แค่ไหน XNUMX 😀
Mageia หายไป🙂
ใช่แล้ว😀
ตอนนี้ฉันทำหน้าที่ของตัวเองฮิฮิฮิฮิ ขอบคุณ🙂
และอีกหนึ่งสำหรับ distro ของฉัน ...
ขอบคุณคำสั่งมีประโยชน์มากฉันมีข้อสงสัยว่าฉันจำได้ว่าใน Ubuntu ครั้งหนึ่งฉันเคยใช้คำสั่ง locate มันเป็นนามแฝงของ find หรือ ... ?
เชิงลบ ค้นหา, มล y ค้นหา เป็นคำสั่งค้นหาอื่น ๆ ที่ไม่เหมือน พบพวกเขาใช้ฐานข้อมูลที่ต้องได้รับการอัปเดตเป็นระยะด้วยคำสั่ง ปรับปรุงข.
คำสั่งทั้งสองประเภทมีการใช้งาน ตัวอย่างเช่นฉันมักจะใช้ ปรับปรุงข ตามด้วย มลค้นหาเมื่อฉันต้องการค้นหาบางสิ่งอย่างรวดเร็วในไดเร็กทอรีที่มีข้อมูลจำนวนมากที่ฉันรู้ว่าไม่ได้อัปเดตบ่อยเกินไป (เช่นแพ็คเกจในที่เก็บ) และ พบ เมื่อฉันต้องการทำบางสิ่งที่ซับซ้อนมากขึ้นเช่นรวมผลการค้นหาด้วยคำสั่งอื่นหรือเมื่อฉันไม่ต้องการสร้างฐานข้อมูลเพราะฉันรู้ว่าไดเร็กทอรีที่ฉันจะค้นหาไม่มีข้อมูลมากเกินไป
ขอบคุณมาก Hugo คำอธิบายที่ยอดเยี่ยมฉันพูดได้แค่ว่าเทอร์มินัลมีประสิทธิภาพแค่ไหนใน gnu / linux!
สวัสดีฉันเห็นว่านี่เป็นหัวข้อเก่า แต่หวังว่าคุณจะยังช่วยฉันได้
ฉันเรียนรู้ที่จะใช้ regexp ตั้งแต่ฉันเห็นเอกสารและฉันกำลังมองหาข้อผิดพลาดหรือล้มเหลวของคำและข้อผิดพลาดของอนุพันธ์หรือล้มเหลวหรือล้มเหลวเป็นต้นและ regexp ของฉันคือ:
: / \ (. * \ (ข้อผิดพลาด | ล้มเหลว \). * \) /
เมื่อดำเนินการมันบอกฉันว่าไม่มีการจับคู่🙁 แต่ถึง
: / \ (. * \ (ข้อผิดพลาด \). * \) /
o
: / \ (. * \ (ล้มเหลว \). * \) /
หากคุณพบรายการที่ตรงกันคุณช่วยบอกได้ไหมว่าฉันผิด
บรรทัดเต็มที่คุณใส่คืออะไร?
เพื่อทดสอบและดูว่าฉันพบวิธีแก้ปัญหาหรือไม่
ในทางกลับกันหากคุณต้องการคุณสามารถตรวจสอบได้ที่นี่: https://blog.desdelinux.net/?s=expresiones+regulares
โปรดช่วยฉันด้วยฉันต้องการคัดลอกไฟล์ที่ลงท้ายด้วย * _ZFIR0069.TXT ไปยังเส้นทางอื่นและเพิ่มวันที่ต่อท้ายฉันกำลังทำคำสั่ง:
วันที่ = $ (วันที่ + »% Y% m% d% »)
ค้นหา / xcom_rep / FATF / exit / 42 -name * _ZFIR0069.TXT -exec cp -p {} / backup / FATF / exit / 42 / {} _ $ date \;
แต่ผลลัพธ์คือ:
{} _20160225% -> แต่จะคัดลอกเพียงไฟล์เดียวจากทั้งหมดและเปลี่ยนชื่อเป็นแบบนั้น
สิ่งที่ฉันต้องการคือคัดลอกไฟล์ทั้งหมดและมีรูปแบบนี้ * _ZFIR0069_ $ date .TXT
อาศิรพจน์
อะไรคือความแตกต่างระหว่าง find * -type d และ find / home / pepe -type d? ฉันต้องการแสดงรายการไดเรกทอรีของบัญชีของฉันและฉันไม่เข้าใจว่าเหตุใดรายการแรกจึงทำงานได้อย่างถูกต้องและรายการที่สองไม่ปรากฏ ช่วยในการ
ฉันจะค้นหาไฟล์ที่ลงท้ายด้วยตัวเลขได้อย่างไรขอบคุณ