ฉันกำลังพยายามtar
รวบรวมไฟล์ในไดเรกทอรีที่เรียกว่า 'my_directory' และลบต้นฉบับโดยใช้คำสั่ง:
tar -cvf files.tar my_directory --remove-files
อย่างไรก็ตามมันเป็นเพียงการลบไฟล์แต่ละไฟล์ภายในไดเรกทอรีและไม่ใช่ไดเรกทอรีเอง (ซึ่งเป็นสิ่งที่ฉันระบุไว้ในคำสั่ง) สิ่งที่ฉันหายไปที่นี่?
แก้ไข:
ใช่ฉันคิดว่าตัวเลือก 'ลบไฟล์' นั้นแท้จริงแล้ว แม้ว่าฉันก็พบว่าหน้าคนไม่ชัดเจนในจุดนั้น (ใน linux ฉันมักไม่ค่อยแยกความแตกต่างระหว่างไดเร็กตอรี่และไฟล์มากนักและลืมบางครั้งว่ามันไม่เหมือนกัน) ดูเหมือนว่าฉันทามติจะไม่ลบไดเรกทอรี
อย่างไรก็ตามจุดกระตุ้นหลักของฉันสำหรับการถามคำถามนี้เกิดจากการจัดการเส้นทางที่แน่นอนของ tar เนื่องจากคุณต้องระบุพา ธ สัมพัทธ์ไปยังไฟล์ / s ที่จะบีบอัดดังนั้นคุณต้องเปลี่ยนเป็นไดเรกทอรีหลักเพื่อทาร์อย่างถูกต้อง อย่างที่ฉันเห็นมันใช้คำสั่ง 'rm' ที่ตามมาใด ๆ อาจเป็นอันตรายในสถานการณ์นั้น ดังนั้นฉันหวังว่าจะทำให้สิ่งต่าง ๆ ง่ายขึ้นด้วยการทำให้ tar ตัวเองทำการลบออก
ตัวอย่างเช่นลองนึกภาพสคริปต์สำรองที่ซึ่งไดเรกทอรีสำหรับสำรองข้อมูล (เช่น. tar) รวมอยู่ในตัวแปรเชลล์ หากค่าตัวแปรเชลล์นั้นถูกป้อนไม่ดีอาจเป็นไปได้ว่าผลลัพธ์อาจถูกลบไฟล์จากไดเรกทอรีใด ๆ ก็ตามที่คุณเคยทำ