4
มูลค่าเพิ่มของตัวเลือก -T ใน GNU cp และ mv คืออะไร?
ทำไมคำสั่ง GNU Coreutils ถึงมี-T/--no-target-directoryตัวเลือก? ดูเหมือนว่าทุกอย่างที่ทำได้สามารถทำได้โดยใช้ซีแมนทิกส์ของ.(จุดตัวเอง) ในลำดับชั้นไดเรกทอรี Unix แบบดั้งเดิม พิจารณา: cp -rT /this/source dir -Tตัวเลือกที่จะช่วยป้องกันการคัดลอกจากการสร้างdir/sourceไดเรกทอรีย่อย ค่อนข้าง/this/sourceจะถูกระบุด้วยdirและเนื้อหาจะถูกแมประหว่างต้นไม้ตามลำดับ ดังนั้นสำหรับตัวอย่างเช่น/this/source/foo.cไปdir/foo.cและอื่น ๆ dir/source/foo.cมากกว่าที่จะ แต่สามารถทำได้อย่างง่ายดายโดยไม่ต้อง-Tใช้ตัวเลือก: cp -r /this/source/. dir # Probably worked fine since dawn of Unix? ความหมายองค์ประกอบจุดต่อท้ายจะถูกคัดลอกเป็นเด็กของdirแต่แน่นอนว่า "เด็ก" ที่มีอยู่แล้ว (เพื่อไม่ต้องถูกสร้างขึ้น) และเป็นจริงdirตัวเองเพื่อให้ผลเป็นที่ยึดติดกับ/this/pathdir มันทำงานได้ดีถ้าไดเรกทอรีปัจจุบันเป็นเป้าหมาย: cp -r /this/tree/node/. . # node's children go to current dir มีบางสิ่งที่คุณสามารถทำได้ด้วยสิ่งเดียว-Tที่ทำให้การดำรงอยู่ของมันมีเหตุผล? (นอกจากการรองรับระบบปฏิบัติการที่ไม่ได้ใช้งานไดเรกทอรีดอทแล้วเหตุผลที่ไม่ได้กล่าวถึงในเอกสาร) …