วิธีลบไฟล์จำนวนมากโดยไม่มีคำต่อท้าย


0

ฉันใช้ Linux, ใช้ Bash

ฉันต้องการลบไฟล์ทั้งหมดโดยไม่มีคำต่อท้ายเช่น "dist" ฉันรู้ว่ามีเทคนิคบางอย่างที่จะทำแทนที่จะลบไฟล์ที่ไม่ต้องการทั้งหมดทีละคน

คำตอบ:


4

ใช้รายการต่อไปนี้เพื่อแสดงรายการไฟล์ทั้งหมดที่จะถูกลบ (เพื่อให้แน่ใจ):

find /path/to/directory -mindepth 1 ! -name "*dist"

เพิ่ม-type fถ้าคุณต้องการลบไฟล์ปกติไม่ใช่ลิงก์สัญลักษณ์หรือไดเรกทอรี


รันคำสั่งด้วย-deleteอาร์กิวเมนต์เพิ่มเติมในตอนท้ายเพื่อลบออก


@slhck ขอบคุณไม่ทราบว่าฉันคิดอะไรอยู่ (อาจจะไม่มาก)
Daniel Beck

2

หากคุณเปิดใช้งานการขยายแบบวงกลมคุณสามารถลอง:

rm !(*.dist)

หมายเหตุ: หากคุณมีไดเรกทอรีที่ไม่มีนามสกุล. ddis จะพยายามและลบออกด้วย แต่จะล้มเหลว

หากต้องการเปิดการใช้งานแบบวงกลมที่ยืดออก: shopt -s extglob

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