Android

Jak przenosić pliki i katalogi w systemie Linux (polecenie mv)

LinuxAdministrator - find, locate, sort, znaki specjalne #006 #Linuxadministrator #bash #linux

LinuxAdministrator - find, locate, sort, znaki specjalne #006 #Linuxadministrator #bash #linux

Spisu treści:

Anonim

Przenoszenie plików i katalogów jest jednym z najbardziej podstawowych zadań, które często trzeba wykonywać w systemie Linux.

W tym samouczku wyjaśnimy, jak używać polecenia mv do przenoszenia plików i katalogów.

Jak korzystać z polecenia mv

Polecenie mv (skrót od move) służy do zmiany nazwy i przenoszenia oraz plików i katalogów z jednej lokalizacji do drugiej. Składnia komendy mv jest następująca:

mv SOURCE DESTINATION

SOURCE może być jednym lub większą liczbą plików lub katalogów, a DESTINATION może być pojedynczy plik lub katalog.

  • Jeśli jako SOURCE podano wiele plików lub katalogów, DESTINATION musi być katalog. W takim przypadku pliki SOURCE są przenoszone do katalogu docelowego. Jeśli podasz pojedynczy plik jako SOURCE , a celem DESTINATION jest katalog istniejący, plik zostanie przeniesiony do określonego katalogu. Jeśli podasz pojedynczy plik jako SOURCE i pojedynczy plik jako cel DESTINATION wówczas zmieniasz nazwę pliku. Gdy SOURCE jest katalogiem, a DESTINATION nie istnieje, SOURCE zostanie przemianowane na DESTINATION . W przeciwnym razie, jeśli istnieje DESTINATION , należy go przenieść do katalogu DESTINATION .

Aby przenieść plik lub katalog, musisz mieć uprawnienia do zapisu zarówno w SOURCE jak i DESTINATION . W przeciwnym razie otrzymasz błąd odmowy uprawnień.

Na przykład, aby przenieść plik file1 z bieżącego katalogu roboczego do katalogu /tmp , który uruchomisz:

mv file1 /tmp

Aby zmienić nazwę pliku, musisz podać nazwę pliku docelowego:

mv file1 file2

Składnia przenoszenia katalogów jest taka sama, jak w przypadku przenoszenia plików. W poniższym przykładzie, jeśli katalog dir2 istnieje, polecenie przeniesie dir1 do dir2 . Jeśli dir2 nie istnieje, nazwa dir1 zostanie zmieniona na dir2 :

mv dir1 dir2

Przenoszenie wielu plików i katalogów

Aby przenieść wiele plików i katalogów, określ pliki, które chcesz przenieść jako źródło. Na przykład, aby przenieść pliki file1 i file2 do katalogu dir1 , wpisz:

mv file1 file2 dir1

Polecenie mv pozwala również na użycie dopasowania wzorca. Na przykład, aby przenieść wszystkie pliki pdf z bieżącego katalogu do katalogu ~/Documents , użyj:

mv *.pdf ~/Documents

Opcje polecenia mv

Polecenie mv akceptuje kilka opcji, które wpływają na domyślne zachowanie polecenia.

W niektórych dystrybucjach Linuksa mv może być aliasem komendy mv z niestandardowym zestawem opcji. Na przykład w CentOS mv to alias mv -i . Aby sprawdzić, czy mv jest aliasem, użyj polecenia type :

type mv

Jeśli mv jest aliasem, dane wyjściowe będą wyglądały mniej więcej tak:

mv is aliased to `mv -i'

Jeśli podano sprzeczne opcje, pierwszeństwo ma ostatnia.

Monituj przed zastąpieniem

Domyślnie, jeśli plik docelowy istnieje, zostanie zastąpiony. Aby wyświetlić monit o potwierdzenie, użyj opcji -i :

mv -i file1 /tmp

mv: overwrite '/tmp/file1'?

Aby zastąpić typ pliku y lub Y

Wymuś zastąpienie

Jeśli spróbujesz zastąpić plik tylko do odczytu, polecenie mv wyświetli monit, czy chcesz zastąpić plik:

mv -i file1 /tmp

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

Aby uniknąć monitu, użyj opcji -f :

mv -f file1 /tmp

Ta opcja jest szczególnie przydatna, gdy trzeba zastąpić wiele plików tylko do odczytu.

Nie zastępuj istniejących plików

Opcja -n mówi mv aby nigdy nie zastępował żadnego istniejącego pliku:

mv -f file1 /tmp

Jeśli file1 istnieje, powyższe polecenie nic nie zrobi. W przeciwnym razie plik zostanie przeniesiony do katalogu /tmp .

Tworzenie kopii zapasowej plików

Jeśli plik docelowy istnieje, możesz utworzyć jego kopię zapasową za pomocą opcji -b :

mv -b file1 /tmp

Plik kopii zapasowej będzie miał taką samą nazwę jak oryginalny plik z dołączoną tyldą ( ~ ).

Użyj polecenia ls, aby sprawdzić, czy kopia zapasowa została utworzona:

ls /tmp/file1*

/tmp/file1 /tmp/file1~

Gadatliwe wyjście

Inną przydatną -v jest -v . Gdy ta opcja jest używana, polecenie drukuje nazwę każdego przeniesionego pliku:

mv -i file1 /tmp

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

Wniosek

Polecenie mv służy do przenoszenia i zmieniania nazw plików i katalogów.

Aby uzyskać więcej informacji o poleceniu mv , sprawdź stronę podręcznika man lub wpisz man mv w swoim terminalu.

Nowi użytkownicy Linuksa, którzy są zastraszani przez wiersz poleceń, mogą używać menedżera plików GUI do przenoszenia plików.

terminal mv