คำถามติดแท็ก find

ยูทิลิตี commandline เพื่อค้นหาไฟล์และไดเรกทอรี

2
ฉันเพิ่งลบทุกอย่างด้วย find -exec mv หรือไม่
ฉันพยายามคิดออกเอง นี่คือคำสั่งที่ฉันใช้ใน terminal: find . -name "*.jpg" -exec mv {} pictures \; ฉันไม่ได้สร้างไดเรกทอรีชื่อภาพก่อน สิ่งที่เกิดขึ้นคือไฟล์ที่ชื่อว่า pictures.gif ถูกสร้างขึ้น พบไฟล์แล้วเขียนทับไฟล์ขณะย้ายหรือไม่ ไฟล์ pictures.gif นี้เป็นไฟล์อะไรที่สร้างขึ้นจากคำสั่งนี้? ไฟล์ยังคงอยู่ในไดรฟ์อยู่หรือไม่?

3
Piping find -name to xargs ส่งผลให้ชื่อไฟล์มีช่องว่างไม่ถูกส่งผ่านไปยังคำสั่ง
ปกติแล้วหากต้องการลบไฟล์ที่มีช่องว่างในชื่อไฟล์คุณจะต้องเรียกใช้: $ rm "file name" แต่ถ้าฉันต้องการลบหลายไฟล์เช่น: $ find . -name "*.txt" | xargs rm นี่จะไม่ลบไฟล์ที่มีช่องว่างในนั้น
26 command-line  find  rm  xargs 

7
รับเส้นทางที่แน่นอนของไฟล์โดยใช้คำสั่ง 'find'
มีวิธีรับพา ธ สัมบูรณ์ของไฟล์ที่กำลังค้นหาอยู่หรือไม่? ตัวอย่างเช่น: find .. -name "filename" มันให้ผลลัพธ์เช่น../filenameฉัน แต่ฉันต้องการเส้นทางเต็ม สิ่งที่ฉันต้องการคือการค้นหาในไดเรกทอรีหลักและลูก ๆ ของมันสำหรับไฟล์เฉพาะที่ฉันจะใช้ในสคริปต์อื่นในภายหลัง ขอบคุณ

3
ฉันจะรับ mlocate เพื่อจัดทำดัชนีไดเรกทอรีบางอย่างได้อย่างไร
ฉันต้องการใช้mlocateบนเซิร์ฟเวอร์ Ubuntu ของฉัน แต่เพียงเพื่อจัดทำดัชนีไดเรกทอรีบางอย่าง (เช่น/homeและ/dataไม่ใช่ทุกอย่างภายใต้/) อย่างไรก็ตามการกำหนดค่ามาตรฐานของ mlocate ทำงานในทางตรงกันข้าม คุณระบุเส้นทางที่คุณต้องการลบ (ด้วยPRUNE_PATHS) มีวิธีง่าย ๆ ในการบรรลุเป้าหมายนี้หรือมียูทิลิตี้ที่คล้ายกันซึ่งจะทำสิ่งที่ฉันต้องการหรือไม่? (หมายเหตุ: ควรรักษาดัชนีเช่นmlocateนั้นจึงfindไม่เป็นที่ยอมรับเช่น) ขอบคุณ
23 search  find  locate 

3
ฉันจะหาตำแหน่งของไอคอนของตัวเรียกใช้งานได้อย่างไร
ฉันมีตัวเรียกใช้งานบนเดสก์ท็อปของฉันและต้องการเพิ่มอีกอันด้วยตนเองด้วยไอคอนเดียวกัน เมื่อฉันไปที่การตั้งค่าของตัวเรียกใช้งานที่มีอยู่แล้วคลิกไอคอนมันจะไม่พาฉันไปยังโฟลเดอร์ที่จัดเก็บไอคอนไว้ แต่ไปยังโฟลเดอร์บ้านของฉัน ฉันจะทราบได้อย่างไรว่าไอคอนที่ใช้ของตัวเรียกใช้นั้นอยู่ในระบบของฉันอย่างไร
22 launcher  icons  find 

3
การใช้ grep กับ pipe และ ampersand เพื่อกรองข้อผิดพลาดจาก find
ฉันใช้ cygwin เพื่อค้นหาไฟล์ใน cygdrive อย่างไรก็ตามฉันต้องระงับการอนุญาตข้อความปฏิเสธ (มิฉะนั้นผลลัพธ์ที่ซ่อนอยู่ในข้อความข้อผิดพลาด) คำสั่งดังต่อไปนี้ใช้งานได้: find -name 'myfile.*' |& grep -v "Permission denied" ฉันไม่เข้าใจว่าทำไมเครื่องหมายแอมเปอร์แซนด์จึงต้องใส่ลงในคำสั่งนี้คาดว่าจะใช้งานได้ แต่ก็ไม่ได้ find -name 'myfile.*' | grep -v "Permission denied" กรุณาอธิบายความหมายของเครื่องหมายและ
22 bash  command-line  find  grep 

3
วิธีค้นหาไฟล์ระหว่างวันที่สองวันโดยใช้“ ค้นหา”
ฉันมีบัญชีอีเมลที่ส่งอีเมล 60GB และในปัจจุบันฉันมีปัญหามากมายในการใช้โปรแกรมรับส่งอีเมลเพื่อเก็บถาวรอีเมลของปีที่แล้ว (2011) ผ่านเทอร์มินัลฉันพยายามใช้findเพื่อค้นหาไฟล์ระหว่าง 2011-01-01 และ 2011-12-31 แต่ก็ไม่มีประโยชน์ ฉันจะค้นหาไฟล์ระหว่างวันที่สองวันได้อย่างไร หากเกี่ยวข้องเป้าหมายสุดท้ายจะเป็นชุดที่จะย้ายแต่ละไฟล์ที่พบซึ่งตรงกับช่วงวันที่ไปยังโฟลเดอร์

4
การใช้ค้นหาเพื่อค้นหาไดเรกทอรี
ฉันใช้ค้นหาตลอดเวลาเพื่อค้นหาไฟล์ที่ฉันรู้ชื่อค้นหาเร็วมากและฉันก็ชอบ สำหรับการค้นหาไฟล์ที่สร้างขึ้นเมื่อเร็ว ๆ นี้พบว่ายอดเยี่ยมมากโดยปกติแล้วด้วยไฟล์ที่สร้างขึ้นเมื่อเร็ว ๆ นี้ฉันรู้ว่าไฟล์เหล่านั้นถูกสร้างขึ้นที่ไหนฉันจึงไม่ต้องค้นหาระบบไฟล์ทั้งหมดของฉัน เมื่อฉันลืมตำแหน่งของไดเรกทอรี แต่ไม่พบหรือค้นหาดูเหมือนจะเหมาะ ค้นหาจะคายข้อมูลมากเกินไปเพราะทุก ๆ ไฟล์ในไดเรกทอรีนั้นตรงกับตำแหน่ง ตัวอย่างเช่นถ้าฉันค้นหาไดเรกทอรีชื่อบันทึกที่ไหนสักแห่งในระบบไฟล์ของฉันค้นหาบันทึกจะส่งกลับผลลัพธ์ตันและตัน ถ้าฉันทำสิ่งเดียวกันกับ find ให้ค้นหา / -name log -type d find ใช้เวลาในการรันและแยกข้อผิดพลาดการอนุญาตทุกประเภททุกครั้งที่พบโฟลเดอร์ที่ไม่สามารถอ่านได้ มีวิธีที่ดีกว่า? คำตอบ: ดังนั้นฉันจึงติดกับ grep จนกว่าฉันจะหาสิ่งอื่น: locatedir () { for last; do true; done if [[ $last == *\/* ]] then locate $@ | grep "${last}\$" else locate $@ …
20 find 


4
เหตุใดจึงใช้การกระทำที่ไม่ปลอดภัย '-execdir' สำหรับไดเรกทอรีที่อยู่ใน PATH
ทำไมจึงไม่ปลอดภัยที่จะใช้การผสมผสานระหว่าง-execdirการกระทำของการค้นหาขณะใช้งาน-execอยู่ เมื่อฉันใช้คำสั่งด้านล่างฉันได้รับข้อความแจ้งต่อไปนี้: /path/to/currentDir/$ find . -type f -name 'partOfFileNames*' -execdir rm -- {} + find: The current directory is included in the PATH environment variable, which is insecure in combination with the -execdir action of find. Please remove the current directory from your $PATH (that is, remove "." or leading …

1
รับ disignpace usign du ทั้งหมดสำหรับหลายไดเรกทอรี
ฉันรู้เกี่ยวกับ du-sh ซึ่งทำให้ฉันมีพื้นที่ดิสก์ทั้งหมดที่ใช้สำหรับไดเรกทอรีที่กำหนด ปัญหาของฉันคือไดเรกทอรีที่ฉันสนใจกระจัดกระจายในไดเรกทอรีย่อยมากมาย ฉันมีคำสั่ง "ค้นหา" ที่ถูกต้องที่ให้ไดเรกทอรีเหล่านี้แก่ฉัน เป้าหมายคือการส่งผ่านไดเรกทอรีที่พบและรับพื้นที่ดิสก์ทั้งหมดที่ใช้โดยไดเรกทอรีเหล่านี้ ถ้าฉันผ่านไดเรกทอรีเหล่านี้เป็นอาร์กิวเมนต์เพื่อ du ฉันได้รับใช้ทั้งหมดสำหรับไดเรกทอรีนั้น แต่ไม่มีผลรวมทั้งหมด ฉันต้องการได้รับผลรวมทั้งหมด ตัวอย่างdu -sh dir1 dir2ให้ผลลัพธ์ดังนี้ 17k dir1 55K dir2 ฉันต้องทำอะไรเพื่อให้ได้ผลรวมที่มากที่สุด?

5
ค้นหารูปแบบ / ข้อความซ้ำในชื่อไฟล์ที่ระบุของไดเรกทอรีซ้ำหรือไม่
ฉันมีไดเรกทอรี (เช่นabc/def/efg) กับหลายไดเรกทอรีย่อย (เช่น ,: abc/def/efg/(1..300)) ไดเรกทอรีย่อยทั้งหมดเหล่านี้มีไฟล์ทั่วไป (เช่นfile.txt) ฉันต้องการค้นหาสตริงในรายการนี้เท่านั้นfile.txtไม่รวมไฟล์อื่น ๆ ฉันจะทำสิ่งนี้ได้อย่างไร ฉันใช้ grep -arin "pattern" *แต่มันช้ามากถ้าเรามีไดเรกทอรีย่อยและไฟล์จำนวนมาก

2
ค้นหาและลบไฟล์ทั้งหมดที่ไม่มีนามสกุลด้วยโฟลเดอร์และโฟลเดอร์ย่อย
ฉันมีโฟลเดอร์ที่ไม่มีไดเรกทอรีย่อยประมาณ 500 รายการ มีถังขยะจำนวนมากที่พบได้ในนั้นและฉันต้องการทำความสะอาด ฉันได้ลบประเภทไฟล์บางอย่างที่ฉันไม่ต้องการเช่นรูปภาพด้วยคำสั่งนี้: find . -mindepth 1 -iname "*.jpg" -type f -delete อย่างไรก็ตามตอนนี้ฉันต้องการลบไฟล์ที่ไม่มีส่วนขยายทั้งหมด ไฟล์เช่น "รายการช็อปปิ้ง" intead ของ "Shopping list.txt" ฉันลองคำสั่งต่อไปนี้แล้ว แต่มันไม่ทำงาน: find . -mindepth 1 ! -iname "*.*" -type f -delete

4
ลบโฟลเดอร์ย่อยที่ว่างเปล่าเก็บโฟลเดอร์หลัก
เมื่อฉันใช้ find /home/user/parentdir -type d -empty -delete มันจะดูซ้ำ ๆ สำหรับโฟลเดอร์ย่อยที่ว่างอยู่ข้างใน/home/user/parentdirและลบออก แต่ถ้า/home/user/parentdirมันว่างเปล่ามันก็ลบparentdirโฟลเดอร์ด้วยซึ่งไม่เป็นที่พึงปรารถนาสำหรับฉัน ฉันต้องการที่จะเก็บเรื่องนี้ไว้parentdirเพื่อrsyncบางไฟล์เพื่อการสำรองข้อมูลหรือระบบคลาวด์ หลังจากการประมวลผลฉันจำเป็นต้องลบโฟลเดอร์ที่ว่างเปล่า แต่ดูเหมือนจะไม่เกิดผลเพื่อสร้างparentdirทุกครั้ง ข้อเสนอแนะใด ๆ ที่จะเก็บparentdir? ฉันคิดเกี่ยวกับการสร้าง.nocopyไฟล์ที่อยู่ภายในและแยกออกจากrsyncแต่ดูเหมือนว่า overkill มีวิธีที่สง่างามกว่านี้ไหม?

2
ค้นหาไฟล์ตามการอนุญาต
ฉันจะค้นหารายการไฟล์ที่มีการอนุญาตพิเศษได้อย่างไร ฉันต้องการค้นหาไฟล์ที่rootผู้ใช้เป็นเจ้าของซึ่งได้rwxรับอนุญาตจากเจ้าของ มีวิธีการหารายชื่อไฟล์ดังกล่าวหรือไม่? ฉันใช้ Ubuntu 16.04

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.