GNU/Linux >> Belajar Linux >  >> Linux

Perintah mv Linux Dijelaskan untuk Pemula (8 Contoh)

Sama seperti cp untuk menyalin dan rm untuk menghapus, Linux juga menawarkan perintah bawaan untuk memindahkan dan mengganti nama file. Ini disebut mv . Pada artikel ini, kita akan membahas dasar-dasar alat baris perintah ini menggunakan contoh yang mudah dipahami. Harap dicatat bahwa semua contoh yang digunakan dalam tutorial ini telah diuji pada Ubuntu 20.04 LTS.

Perintah mv Linux

Seperti yang telah disebutkan, perintah mv di Linux digunakan untuk memindahkan atau mengganti nama file. Berikut sintaks perintahnya:

mv [OPTION]... [-T] SOURCE DEST
mv [OPTION]... SOURCE... DIRECTORY
mv [OPTION]... -t DIRECTORY SOURCE...

Dan inilah yang dikatakan halaman manual tentangnya:

Rename SOURCE to DEST, or move SOURCE(s) to DIRECTORY.

Contoh gaya T&J berikut akan memberi Anda gambaran yang lebih baik tentang cara kerja alat ini.

Q1. Bagaimana cara menggunakan perintah mv di Linux?

Jika Anda hanya ingin mengganti nama file, Anda dapat menggunakan perintah mv dengan cara berikut:

mv [filename] [new_filename]

Misalnya:

mv names.txt fullnames.txt

Demikian pula, jika persyaratannya adalah memindahkan file ke lokasi baru, gunakan perintah mv dengan cara berikut:

mv [nama file] [dir tujuan]

Misalnya:

mv fullnames.txt /home/himanshu/Downloads

Q2. Bagaimana cara memastikan mv meminta sebelum ditimpa?

Secara default, perintah mv tidak meminta saat operasi melibatkan penimpaan file yang ada. Misalnya, screenshot berikut menunjukkan full_names.txt yang ada ditimpa oleh mv tanpa peringatan atau pemberitahuan.

Namun, jika mau, Anda dapat memaksa mv untuk meminta dengan menggunakan -i opsi baris perintah.

mv -i [nama_file] [nama_file_baru]

Jadi tangkapan layar di atas dengan jelas menunjukkan bahwa -i mengarah ke mv meminta izin pengguna sebelum menimpa file yang ada. Harap perhatikan bahwa jika Anda ingin secara eksplisit menentukan bahwa Anda tidak ingin mv meminta sebelum menimpa, gunakan -f opsi baris perintah.

Q3. Bagaimana membuat mv tidak menimpa file yang ada?

Untuk ini, Anda perlu menggunakan -n opsi baris perintah.

mv -n [filename] [new_filename]

Tangkapan layar berikut menunjukkan operasi mv tidak berhasil karena file dengan nama 'full_names.txt' sudah ada dan perintah memiliki opsi -n di dalamnya.

Catatan:

If you specify more than one of -i, -f, -n, only the final one takes effect.

Q4. Bagaimana cara membuat mv menghapus garis miring (jika ada) dari argumen sumber?

Untuk menghapus garis miring akhir dari argumen sumber, gunakan --strip-trailing-slash opsi baris perintah seperti yang ditunjukkan di bawah ini.

mv --strip-trailing-slashes [source] [dest]

Begini cara dokumentasi resmi menjelaskan kegunaan opsi ini:

This is useful when a source argument may have a trailing slash and specify a symbolic link to a directory. This scenario is in fact rather common because some shells can automatically append a trailing slash when performing file name completion on such symbolic links. Without this option, mv, for example, (via the system’s rename function) must interpret a trailing slash as a request to dereference the symbolic link and so must rename the indirectly referenced directory and not the symbolic link. Although it may seem surprising that such behavior be the default, it is required by POSIX and is consistent with other parts of that standard.

Q5. Bagaimana cara membuat mv memperlakukan tujuan sebagai file biasa?

Untuk memastikan bahwa entitas tujuan diperlakukan sebagai file normal (dan bukan direktori), gunakan -T opsi baris perintah.

mv -T [source] [dest]

Inilah mengapa opsi baris perintah ini ada:

This can help avoid race conditions in programs that operate in a shared area. For example, when the command ‘mv /tmp/source /tmp/dest’ succeeds, there is no guarantee that /tmp/source was renamed to /tmp/dest: it could have been renamed to/tmp/dest/source instead, if some other process created /tmp/dest as a directory. However, if mv -T /tmp/source /tmp/dest succeeds, there is no question that/tmp/source was renamed to /tmp/dest.
In the opposite situation, where you want the last operand to be treated as a directory and want a diagnostic otherwise, you can use the --target-directory (-t) option.

Q6. Bagaimana cara membuat file mv move hanya jika lebih baru dari file tujuan?

Misalkan ada file bernama fullnames.txt di direktori Downloads di sistem Anda, dan ada file dengan nama yang sama di direktori home Anda. Sekarang, Anda ingin memperbarui ~/Downloads/fullnames.txt dengan ~/fullnames.txt, tetapi hanya jika yang terakhir lebih baru. Kemudian, dalam hal ini, Anda harus menggunakan -u opsi baris perintah.

mv -u ~/fullnames.txt ~/Downloads/fullnames.txt

Opsi ini sangat berguna jika Anda perlu mengambil keputusan seperti itu dari dalam skrip shell.

Q7. Bagaimana membuat mv memancarkan detail dari semua yang dilakukannya?

Jika Anda ingin mv menampilkan informasi yang menjelaskan apa yang sebenarnya dilakukannya, gunakan -v opsi baris perintah.

mv -v [filename] [new_filename]

Misalnya, tangkapan layar berikut menunjukkan mv memancarkan beberapa detail bermanfaat tentang apa yang sebenarnya dilakukannya.

Q8. Bagaimana cara memaksa mv untuk membuat cadangan file tujuan yang ada?

Ini dapat Anda lakukan menggunakan -b opsi baris perintah. File cadangan yang dibuat dengan cara ini akan memiliki nama yang sama dengan file tujuan, tetapi dengan tilde (~) yang ditambahkan padanya. Ini contohnya:

Kesimpulan

Seperti yang sudah Anda duga sekarang, mv sama pentingnya dengan cp dan rm untuk fungsionalitas yang ditawarkannya - mengganti nama/memindahkan file juga merupakan salah satu operasi dasar. Kami telah membahas sebagian besar opsi baris perintah yang ditawarkan alat ini. Jadi Anda bisa langsung mempraktekkannya dan mulai menggunakan perintah. Untuk mengetahui lebih banyak tentang mv, kunjungi halaman manualnya.


Linux
  1. Perintah tempel Linux Dijelaskan Untuk Pemula (5 Contoh)

  2. Perintah Linux wc Dijelaskan untuk Pemula (6 Contoh)

  3. Perintah unexpand Linux Dijelaskan untuk Pemula (dengan Contoh)

  1. Perintah dir Linux untuk pemula (10 contoh)

  2. Perintah keluar Linux Dijelaskan untuk Pemula (dengan Contoh)

  3. Perintah objdump Linux Dijelaskan untuk Pemula (7 Contoh)

  1. Perintah Csplit Linux Dijelaskan untuk Pemula (6 Contoh)

  2. Perintah dirname Linux dijelaskan untuk pemula (4 contoh)

  3. Perintah Linux Gratis Dijelaskan untuk Pemula (6 Contoh)