ฉันอาจจะเขียนเชลล์สคริปต์เพื่อค้นหาไฟล์เท่านั้นจากนั้นส่งรายการไปยัง tar แต่ฉันสงสัยว่ามีคุณลักษณะในตัวใน tar ที่อนุญาตให้ทำเช่นนั้นในบรรทัดคำสั่งเดียวหรือไม่
ตัวอย่างเช่นฉันพบ--no-recursion
สวิตช์ แต่เมื่อฉัน:
tar --no-recursion -cvf mydir.tar mydir
มันเก็บเฉพาะชื่อของรายการในไดเรกทอรี (รวมถึงไดเรกทอรีย่อย!) แต่มันไม่ได้เก็บไฟล์ใด ๆ
ฉันก็ลอง:
tar --no-recursion -cvf mydir.tar mydir/*
แต่ในขณะที่มันเก็บไฟล์เท่านั้นมันยังเก็บชื่อของไดเรกทอรีย่อย
มีวิธีบอกไฟล์ tar เท่านั้นไม่มีไดเรกทอรีหรือไม่
find mydir -type f |xargs cp -t tempdir
และจากนั้น tar tempdir
find mydir -depth 1 -type f | xargs tar cf mydir.tar
find mydir -maxdepth 1 -type f -exec tar cvf mydir.tar {} +
แทน: +
ทำให้ทุกไฟล์บนบรรทัดคำสั่งเช่นเดียวกับ xargs