Android

วิธีย้ายไฟล์และไดเรกทอรีใน linux (คำสั่ง mv)

What the Waters Left Behind Trailer 2 (2018) Los Olvidados

What the Waters Left Behind Trailer 2 (2018) Los Olvidados

สารบัญ:

Anonim

การย้ายไฟล์และไดเรกทอรีเป็นหนึ่งในภารกิจพื้นฐานที่สุดที่คุณต้องทำในระบบ Linux

ในบทช่วยสอนนี้เราจะอธิบายวิธีใช้คำสั่ง mv เพื่อย้ายไฟล์และไดเรกทอรี

วิธีใช้คำสั่ง mv

คำสั่ง mv (ย่อมาจาก move) ถูกใช้เพื่อเปลี่ยนชื่อและย้ายและไฟล์และไดเรกทอรีจากที่หนึ่งไปอีกที่หนึ่ง ไวยากรณ์สำหรับคำสั่ง mv มีดังนี้:

mv SOURCE DESTINATION

SOURCE สามารถเป็นหนึ่งหรือมากกว่าหนึ่งไฟล์หรือไดเรกทอรีและ DESTINATION สามารถเป็นไฟล์หรือไดเรกทอรีเดียว

  • เมื่อได้รับหลายไฟล์หรือไดเรกทอรีเป็น SOURCE ที่มา DESTINATION จะต้องเป็นไดเรกทอรี ในกรณีนี้ไฟล์ SOURCE จะถูกย้ายไปยังไดเรกทอรีเป้าหมายหากคุณระบุไฟล์เดียวเป็น SOURCE และ DESTINATION เป็นไดเรกทอรีที่มีอยู่แล้วไฟล์จะถูกย้ายไปยังไดเรกทอรีที่ระบุหากคุณระบุไฟล์เดียวเป็น SOURCE และไฟล์เดียวเป็นปลายทางของ DESTINATION คุณจะเปลี่ยนชื่อไฟล์เมื่อ SOURCE เป็นไดเรกทอรีและ DESTINATION ไม่มีอยู่ SOURCE จะถูกเปลี่ยนชื่อเป็น DESTINATION มิฉะนั้นถ้า DESTINATION มีอยู่มันจะถูกย้ายภายในไดเรกทอรี DESTINATION

ในการย้ายไฟล์หรือไดเรกทอรีคุณจะต้องมีสิทธิ์ในการเขียนทั้งใน SOURCE และ DESTINATION มิฉะนั้นคุณจะได้รับข้อผิดพลาดถูกปฏิเสธสิทธิ์

ตัวอย่างเช่นหากต้องการย้ายไฟล์ file1 จากไดเร็กทอรีการทำงานปัจจุบันไปยังไดเร็กทอรี /tmp คุณจะรัน:

mv file1 /tmp

ในการเปลี่ยนชื่อไฟล์คุณต้องระบุชื่อไฟล์ปลายทาง:

mv file1 file2

ไวยากรณ์สำหรับการย้ายไดเร็กทอรีเหมือนกับเมื่อย้ายไฟล์ ในตัวอย่างต่อไปนี้หากมีไดเร็กทอรี dir2 อยู่คำสั่งจะย้าย dir1 ภายใน dir2 หากไม่มี dir2 dir1 จะถูกเปลี่ยนชื่อเป็น dir2 :

mv dir1 dir2

การย้ายหลายไฟล์และไดเรกทอรี

หากต้องการย้ายหลายไฟล์และไดเรกทอรีให้ระบุไฟล์ที่คุณต้องการย้ายเป็นแหล่งที่มา ตัวอย่างเช่นหากต้องการย้ายไฟล์ file1 และ file2 ไปยังไดเร็กทอรี dir1 คุณจะต้องพิมพ์:

mv file1 file2 dir1

คำสั่ง mv ยังอนุญาตให้คุณใช้การจับคู่รูปแบบ ตัวอย่างเช่นหากต้องการย้าย pdf ทั้งหมดจากไดเรกทอรีปัจจุบันไปยังไดเรกทอรี ~/Documents คุณจะต้องใช้:

mv *.pdf ~/Documents

ตัวเลือกคำสั่ง mv

คำสั่ง mv ยอมรับหลายตัวเลือกที่มีผลต่อพฤติกรรมคำสั่งเริ่มต้น

ในการแจกแจง Linux บางรายการ mv อาจเป็นนามแฝงของคำสั่ง mv พร้อมชุดตัวเลือกที่กำหนดเอง ตัวอย่างเช่นใน CentOS mv คือนามแฝงของ mv -i คุณสามารถค้นหาว่า mv เป็นนามแฝงโดยใช้คำสั่ง type :

type mv

หาก mv เป็นนามแฝงเอาต์พุตจะมีลักษณะดังนี้:

mv is aliased to `mv -i'

หากมีการกำหนดตัวเลือกที่ขัดแย้งกันตัวเลือกสุดท้ายจะมีความสำคัญกว่า

พรอมต์ก่อนเขียนทับ

ตามค่าเริ่มต้นหากไฟล์ปลายทางมีอยู่ไฟล์นั้นจะถูกเขียนทับ หากต้องการพรอมต์ให้ยืนยันให้ใช้ตัวเลือก -i :

mv -i file1 /tmp

mv: overwrite '/tmp/file1'?

หากต้องการเขียนทับไฟล์ประเภท y หรือ Y

บังคับให้เขียนทับ

หากคุณพยายามเขียนทับไฟล์แบบอ่านอย่างเดียวคำสั่ง mv จะแจ้งให้คุณทราบว่าคุณต้องการเขียนทับไฟล์หรือไม่:

mv -i file1 /tmp

mv: replace '/tmp/file1', overriding mode 0400 (r--------)?

เพื่อหลีกเลี่ยงการถูกพร้อมต์ให้ใช้อ็อพชัน -f :

mv -f file1 /tmp

ตัวเลือกนี้มีประโยชน์อย่างยิ่งเมื่อคุณต้องการเขียนทับไฟล์แบบอ่านอย่างเดียวหลาย ๆ ไฟล์

อย่าเขียนทับไฟล์ที่มีอยู่

ตัวเลือก -n บอก mv ว่าจะไม่เขียนทับไฟล์ใด ๆ ที่มีอยู่:

mv -f file1 /tmp

หากมีไฟล์ 1 อยู่คำสั่งด้านบนจะไม่ทำอะไรเลย มิฉะนั้นจะย้ายไฟล์ไปยังไดเรกทอรี /tmp

การสำรองไฟล์

หากไฟล์ปลายทางมีอยู่คุณสามารถสร้างข้อมูลสำรองโดยใช้ตัวเลือก -b :

mv -b file1 /tmp

ไฟล์สำรองข้อมูลจะมีชื่อเหมือนกับไฟล์ต้นฉบับที่มีเครื่องหมายตัวหนอน ( ~ ) ต่อท้าย

ใช้คำสั่ง ls เพื่อตรวจสอบว่าการสำรองข้อมูลถูกสร้างขึ้น:

ls /tmp/file1*

/tmp/file1 /tmp/file1~

เอาท์พุท verbose

ตัวเลือกอื่นที่มีประโยชน์คือ -v เมื่อใช้ตัวเลือกนี้คำสั่งจะพิมพ์ชื่อของไฟล์ที่ย้ายแต่ละไฟล์:

mv -i file1 /tmp

renamed 'file1' -> '/tmp/file1'

ข้อสรุป

คำสั่ง mv ใช้เพื่อย้ายและเปลี่ยนชื่อไฟล์และไดเรกทอรี

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับคำสั่ง mv ให้ตรวจสอบ man page หรือพิมพ์ man mv ในเทอร์มินัลของคุณ

ผู้ใช้ Linux ใหม่ที่ถูกข่มขู่โดยบรรทัดคำสั่งสามารถใช้ตัวจัดการไฟล์ GUI เพื่อย้ายไฟล์

mv terminal