คำแนะนำพื้นฐานในการเปลี่ยนชื่อไดเร็กทอรีเดียวหรือหลายไดเร็กทอรีใน Linux โดยใช้ยูทิลิตีบรรทัดคำสั่งเท่านั้น
การเปลี่ยนชื่อไฟล์และไดเร็กทอรีเป็นงานบ่อยครั้งที่ผู้ใช้ต้องดำเนินการ โชคดีที่ Linux มีวิธีเปลี่ยนชื่อไฟล์และไดเร็กทอรีได้โดยตรงจากเทอร์มินัล
เราจะพูดถึงคำสั่ง Linux สองคำสั่งเพื่อเปลี่ยนชื่อไดเร็กทอรีใน Linux ดิ mv
และ เปลี่ยนชื่อ
คำสั่ง
โดยใช้ mv
คำสั่งเปลี่ยนชื่อไดเร็กทอรีใน Linux
คำสั่ง mv เป็นหนึ่งในคำสั่งพื้นฐานที่มีให้โดย Linux และระบบที่คล้าย Unix อื่นๆ ทั้งหมด mv
โดยทั่วไปจะใช้เพื่อย้ายไฟล์จากที่หนึ่งไปยังอีกที่หนึ่ง แต่ก็ยังใช้กันอย่างแพร่หลายในวิธีการเปลี่ยนชื่อไฟล์และไดเร็กทอรีเช่นกัน
ใช้ไวยากรณ์ต่อไปนี้เพื่อเปลี่ยนชื่อไดเร็กทอรีโดยใช้ mv
.
ไวยากรณ์:
mv [old_name_of_directory] [new_name_of_directory]
ขั้นแรก ตรวจสอบไดเร็กทอรีที่มีอยู่ในไดเร็กทอรีการทำงานปัจจุบันโดยใช้คำสั่ง ลส
สั่งการ.
ลส
เอาท์พุท:
gaurav@ubuntu:~/workspace$ ls -l Total 76 drwxr-xr-x 2 root root 4096 Sep 9 16:19 daa drwxr-xr-x 2 root root 4096 Sep 9 16:20 dmta drwxr-xr-x 2 root root 4096 9 ก.ย. 15:19 น. pc drwxr-xr-x 2 รูท root 4096 9 ก.ย. 16:19 pmcd drwxr-xr-x 2 รูท root 4096 9 ก.ย. 16:19 qps drwxr-xr-x 2 รูท root 4096 9 ก.ย. 16 :19 ssda
ตอนนี้เราจะเปลี่ยนชื่อโฟลเดอร์ชื่อ daa ถึง หุ่นยนต์ ใช้ mv
สั่งการ.
ตัวอย่าง:
mv daa หุ่นยนต์
จากนั้น ตรวจสอบรายชื่อไดเร็กทอรีอีกครั้งโดยใช้คำสั่ง ls เพื่อตรวจสอบชื่อใหม่ของไดเร็กทอรี
gaurav@ubuntu:~/workspace$ ls dmta pc pmcd qps หุ่นยนต์ ssda
หากคุณพยายามเปลี่ยนชื่อไดเร็กทอรีเป็นชื่อที่ใช้แล้ว โดยไดเร็กทอรีอื่นในตำแหน่งที่ต้องการ ไดเร็กทอรีที่มีชื่อเก่าจะถูกลบและเขียนทับด้วยไดเร็กทอรีใหม่
ตัวอย่าง:
gaurav@ubuntu:~/workspace$ ls -l Total 76 drwxr-xr-x 2 root root 4096 Sep 9 16:19 dmta drwxr-xr-x 2 root root 4096 Sep 9 16:20 pc drwxr-xr-x 2 root root 4096 9 ก.ย. 15:19 pmcd drwxr-xr-x 2 รูท root 4096 9 ก.ย. 16:19 qps drwxr-xr-x 2 รูท root 4096 9 ก.ย. 16:19 หุ่นยนต์ drwxr-xr-x 2 รูท root 4096 9 ก.ย. 16 :19 ssda
จากรายการด้านบน มาทำงานกับไดเร็กทอรีกันเถอะ dmta, pc และ qps.
ตัวอย่างผลลัพธ์:
gaurav@buntu:~/workspace$ mv dmta qps gaurav@ubuntu:~/workspace$ ls pc pmcd qps หุ่นยนต์ ssda gaurav@ubuntu:~/workspace$
ที่นี่ฉันพยายามเปลี่ยนชื่อไดเรกทอรี 'dmta' เช่น 'qps'. ที่นี่ไดเร็กทอรี qps มีอยู่แล้ว แต่ถึงกระนั้นพรอมต์การเขียนทับก็ไม่แสดงโดยเทอร์มินัล
นอกจากนี้ คุณจะเห็นว่าไดเร็กทอรีชื่อ 'dmta' ถูกลบแล้ว นี่คือความไม่ชัดเจนในการใช้ mv
คำสั่งถ้ามีมากกว่าหนึ่งไดเร็กทอรีที่มีชื่อเดียวกัน
เพื่อหลีกเลี่ยงความกำกวมดังกล่าว เราสามารถใช้ the เปลี่ยนชื่อ
สั่งการ.
โดยใช้ เปลี่ยนชื่อ
คำสั่งเปลี่ยนชื่อไดเร็กทอรี
ดังที่ได้กล่าวมาแล้วข้างต้น mv
เป็นคำสั่งพื้นฐานและยังมีพฤติกรรมที่คลุมเครืออยู่บ้าง เพื่อเอาชนะข้อบกพร่องเหล่านี้ เราสามารถใช้ เปลี่ยนชื่อ
คำสั่งเปลี่ยนชื่อหลายไฟล์พร้อมกัน
เปลี่ยนชื่อ
ไม่ได้มาพร้อมกับการแจกจ่าย Linux คุณจะต้องติดตั้งแยกต่างหากก่อน เปลี่ยนชื่อ
มีจำหน่ายในสองเวอร์ชันที่แตกต่างกัน แต่การทำงานของพวกเขาจะเหมือนกันในทุกสภาพแวดล้อม ข้อแตกต่างเพียงอย่างเดียวคือกับคำสั่งในการติดตั้ง เปลี่ยนชื่อ
คุณประโยชน์. ตรวจสอบด้านล่าง
ติดตั้ง เปลี่ยนชื่อ
บน Ubuntu และ Debian distributions:
sudo apt-get install เปลี่ยนชื่อ
ติดตั้ง เปลี่ยนชื่อ
ในการแจกแจง Fedora, CentOS และ RedHat:
sudo dnf ติดตั้ง prename
หลังจากติดตั้งการเปลี่ยนชื่อบนคอมพิวเตอร์ Linux ของคุณแล้ว ให้ใช้รหัสด้านล่างเปลี่ยนชื่อไดเร็กทอรีเดียว
ไวยากรณ์:
sudo เปลี่ยนชื่อ [นิพจน์ Perl] [ไดเรกทอรี]
ตัวอย่าง:
เราจะลองเปลี่ยนชื่อไดเร็กทอรีเดียวก่อนโดยใช้ เปลี่ยนชื่อ
สั่งการ. เราจะเปลี่ยนชื่อไดเร็กทอรีชื่อ dir2 เช่น ssh.
เอาท์พุท:
root@ubuntu:~# ls DIR1 dir2 dir3 dir4 dir5 pc snap
root@ubuntu:~# เปลี่ยนชื่อ 's/dir2/ssh/' dir2 root@ubuntu:~# ls -l total 28 drwxr-xr-x 2 root root 4096 Sep 9 15:15 DIR1 drwxr-xr-x 2 root root 4096 9 ก.ย. 15:15 dir3 drwxr-xr-x 2 รูท รูท 4096 9 ก.ย. 15:15 dir4 drwxr-xr-x 2 รูท รูท 4096 9 ก.ย. 15:15 dir5 drwxr-xr-x 2 รูทรูท 4096 9 ก.ย. 15: 19 ชิ้น drwxr-xr-x 3 รูท root 4096 9 ก.ย. 14:59 snap drwxr-xr-x 2 รูท root 4096 9 ก.ย. 15:15 ssh
จากผลลัพธ์ข้างต้น เราจะเห็นไดเร็กทอรีที่ชื่อว่า 'dir2' ถูกเปลี่ยนชื่อเป็น 'ssh' ใช้ เปลี่ยนชื่อ
สั่งการ.
เปลี่ยนชื่อหลายไดเรกทอรีพร้อมกันโดยใช้ เปลี่ยนชื่อ
สั่งการ
สมมติว่าฉันมีสองไดเร็กทอรี 'เกม' และ 'งาน'. ไดเร็กทอรีทั้งสองตั้งชื่อเป็นตัวพิมพ์เล็ก ฉันจะเปลี่ยนชื่อของไดเร็กทอรีเหล่านี้โดยใช้ เปลี่ยนชื่อ
คำสั่งเป็นตัวพิมพ์ใหญ่
ตัวอย่าง:
sudo เปลี่ยนชื่อ 'y/a-z/A-Z/' [directories_to_rename]
เอาท์พุท:
ตรวจสอบรายชื่อไดเร็กทอรีปัจจุบันโดยใช้ ลส
สั่งการ.
root@ubuntu:~# ls -l Total 36 drwxr-xr-x 2 root root 4096 Sep 9 15:15 DIR1 drwxr-xr-x 2 root root 4096 Sep 9 15:15 dir3 drwxr-xr-x 2 root root 4096 9 ก.ย. 15:15 dir4 drwxr-xr-x 2 รูทรูท 4096 9 ก.ย. 15:15 dir5 drwxr-xr-x 2 รูทรูท 4096 9 ก.ย. 15:31 game.sql drwxr-xr-x 2 รูทรูท 4096 9 ก.ย. 15 :19 ชิ้น drwxr-xr-x 3 root root 4096 Sep 9 14:59 snap drwxr-xr-x 2 root root 4096 Sep 9 15:15 ssh drwxr-xr-x 2 root root 4096 9 ก.ย. 15:30 work.sql
ใช้คำสั่งเปลี่ยนชื่อเพื่อเปลี่ยนชื่อของไดเร็กทอรีที่เน้น
root@ubuntu:~# sudo เปลี่ยนชื่อ 'y/a-z/A-Z/' *.sql
ตรวจสอบเอาต์พุตด้วย ลส
สั่งการ.
root@ubuntu:~# ls -l total 36 drwxr-xr-x 2 root root 4096 Sep 9 15:15 DIR1 drwxr-xr-x 2 root root 4096 Sep 9 15:31 GAME.SQL drwxr-xr-x 2 root root 4096 9 ก.ย. 15:30 WORK.SQL drwxr-xr-x 2 รูท root 4096 9 ก.ย. 15:15 dir3 drwxr-xr-x 2 รูท root 4096 9 ก.ย. 15:15 dir4
ที่นี่เราจะเห็นว่าเราได้เปลี่ยนชื่อไดเร็กทอรีจากตัวพิมพ์เล็กเป็นตัวพิมพ์ใหญ่
ตัวอย่างที่ 2:
ในตัวอย่างนี้ เราจะพยายามเปลี่ยนชื่อส่วนของไฟล์หลายไฟล์พร้อมกัน
ให้เราแสดงรายการไดเร็กทอรีก่อน
root@ubuntu-s-1vcpu-1gb-blr1-01:~# ls -l total 56 drwxr-xr-x 2 root root 4096 Sep 9 15:15 DIR1 drwxr-xr-x 2 root root 4096 Sep 9 15:31 GAME.SQL drwxr-xr-x 2 รูทรูท 4096 9 ก.ย. 15:30 น. WORK.SQL drwxr-xr-x 2 รูทรูท 4096 9 ก.ย. 15:50 dir1.sql drwxr-xr-x 2 รูทรูท 4096 9 ก.ย. 15: 50 dir2.sql drwxr-xr-x 2 รูท root 4096 9 ก.ย. 15:15 dir3 drwxr-xr-x 2 รูท root 4096 9 ก.ย. 15:15 dir4 drwxr-xr-x 2 รูท root 4096 9 ก.ย. 15:15 dir5 drwxr -xr-x 2 root root 4096 Sep 9 15:19 pc drwxr-xr-x 2 root root 4096 Sep 9 15:54 sheldon1 drwxr-xr-x 2 root root 4096 Sep 9 15:54 sheldon2 drwxr-xr-x 2 root root 4096 9 ก.ย. 15:54 เชลดอน3 drwxr-xr-x 3 รูท root 4096 9 ก.ย. 14:59 snap drwxr-xr-x 2 รูทราก 4096 9 ก.ย. 15:15 ssh
เรียกใช้คำสั่ง rename commadn เป็น rename -v เพื่อให้เราสามารถเห็นการเปลี่ยนแปลงที่ทำเป็นเอาต์พุต
root@ubuntu:~#rename -n -v sheldon sheldonEPQ เชลดอน? 'sheldon1' -> 'sheldonEPQ1' 'sheldon2' -> 'sheldonEPQ2' 'sheldon3' -> 'sheldonEPQ3'
root@ubuntu:~# ls -l total 56 drwxr-xr-x 2 root root 4096 Sep 9 15:15 DIR1 drwxr-xr-x 2 root root 4096 Sep 9 15:31 GAME.SQL drwxr-xr-x 2 root root 4096 Sep 9 15:30 WORK.SQL drwxr-xr-x 2 root root 4096 Sep 9 15:54 sheldonEPQ1 drwxr-xr-x 2 root root 4096 Sep 9 15:54 sheldonEPQ2 drwxr-xr-x 2 root root 4096 Sep 9 15:54 เชลดอนEPQ3
ในตัวอย่างนี้ เราได้เปลี่ยนส่วนของชื่อไฟล์หลายไฟล์พร้อมกัน
บทสรุป
ในบทช่วยสอนนี้ เราได้เรียนรู้วิธีการแก้ไขชื่อไดเร็กทอรีโดยใช้ mv
และ เปลี่ยนชื่อ
สั่งการ. เราเรียนรู้ที่จะเปลี่ยนชื่อไดเร็กทอรีเดียวและหลายไดเร็กทอรี