3
ชื่อไฟล์ 'find -exec' pass มีช่องว่างอย่างไร
หากฉันมีไดเรกทอรีที่มีไฟล์บางไฟล์ที่ชื่อมีช่องว่างเช่น $ ls -1 dir1 file 1 file 2 file 3 ฉันสามารถคัดลอกทั้งหมดไปยังไดเรกทอรีอื่นเช่นนี้ได้สำเร็จ: $ find dir1 -mindepth 1 -exec cp -t dir2 {} + อย่างไรก็ตามการส่งออกของfind dir1 -mindepth 1มีช่องว่างที่ไม่หนี: $ find dir1 mindepth 1 dir1/file 1 dir1/file 3 dir1/file 3 หากฉันใช้print0แทนprintเอาต์พุตยังคงมีช่องว่างที่ไม่ได้ใช้ Escape: $ find dir1 mindepth 1 -print0 dir1/file 1dir1/file 2dir1/file 3 …