ในหน้าต่างคอนโซล (cmd / คำสั่ง) คุณสามารถเขียนหรือrename a b move a bความแตกต่างระหว่างสองคืออะไร?
ในหน้าต่างคอนโซล (cmd / คำสั่ง) คุณสามารถเขียนหรือrename a b move a bความแตกต่างระหว่างสองคืออะไร?
คำตอบ:
มีความแตกต่างที่สำคัญสองประการ:
renameไม่สามารถย้ายไฟล์ไปยังไดเรกทอรีหรือไดรฟ์อื่นmoveได้
renameไม่สามารถเขียนทับไฟล์ที่มีอยู่moveสามารถ (โดยใช้/yพารามิเตอร์)
สมมติว่าcmd.exeเชลล์แบบดั้งเดิม:
rename ไม่สามารถย้ายไฟล์ไปยังไดเรกทอรีอื่น
move *.txt E:\Notes
แต่มันสามารถเปลี่ยนชื่อหลายไฟล์พร้อมกัน ตัวอย่างเช่น:
rename very-long-name.c *.cpp
rename *.txt *.lol
rename proj1.* "Project 1.*"
(ใช้งานได้เนื่องจากเชลล์MS-DOS command.comและ Windows cmd.exeซึ่งแตกต่างจากยูนิกซ์ของพวกเขาอย่าขยาย wildcards โดยอัตโนมัติ - สิ่งนี้จะถูกทิ้งไว้สำหรับโปรแกรมเอง)
มีสองคำตอบที่ดีอยู่แล้ว แต่ฉันถูกบังคับให้พูดถึงความแตกต่างที่ยังไม่ได้กล่าวถึงและนั่นคือไวยากรณ์ของตัวเอง หากคุณต้องการย้ายไฟล์และใช้งานrenameคุณจะต้องใส่ชื่อเดิมสองครั้ง
move MyFile.txt MyFolder
กับ
rename MyFile.txt MyFolder\MyFile.txt