Polecenia Linuksa

Opanowanie polecenia kopiowania plików w systemie Linux z przykładami

Opanowanie polecenia kopiowania plików w systemie Linux z przykładami
W dowolnym systemie operacyjnym kopiowanie plików i katalogów jest jedną z najczęstszych czynności wykonywanych przez użytkownika. W wierszu poleceń systemu Linux możesz nauczyć się prawidłowego korzystania z polecenia cp, aby dostosować i opanować kopiowanie plików zgodnie z własnymi potrzebami. W tym artykule wyjaśnimy użycie polecenia cp w systemie Linux, przedstawiając kilka przydatnych przykładów.

Uruchomiliśmy polecenia i przykłady wymienione w tym artykule w systemie Debian 10 Buster, ale możesz je replikować w prawie wszystkich dystrybucjach Linuksa.

Linia poleceń systemu Linux, Terminal, jest łatwo dostępna za pośrednictwem aplikacji.  Wyszukaj w programie uruchamiającym w następujący sposób:

Przykład 1: Kopiowanie pojedynczego pliku do katalogu docelowego

Najprostszym zastosowaniem polecenia cp jest skopiowanie pojedynczego pliku źródłowego do katalogu docelowego. Oto składnia, której możesz użyć, aby to zrobić:

$ cp plik źródłowy /cel/katalog

Przykład:

W tym przykładzie kopiuję plik o nazwie sample_file.txt do mojego folderu Dokumenty:

Później zweryfikowałem obecność pliku w folderze docelowym za pomocą polecenia ls.

Przykład 2: Kopiowanie wielu plików do katalogu docelowego

Za pomocą polecenia cp możesz skopiować wiele plików do katalogu docelowego, używając następującej składni:

$ cp plik_źródłowy1 plik_źródłowy2 plik_źródłowy3…   /cel/katalog

Przykład:

W tym przykładzie kopiuję dwa przykładowe pliki do mojego folderu Dokumenty za pomocą polecenia cp:

Później zweryfikowałem obecność tych plików w folderze docelowym za pomocą polecenia ls.

Przykład 3: Kopiowanie plików w sposób interaktywny

Jeśli plik o tej samej nazwie istnieje w folderze docelowym, możesz użyć polecenia cp, aby wyświetlić monit przed nadpisaniem pliku docelowego. Możesz użyć przełącznika -i w następujący sposób:

$ cp -i plik_źródłowy /cel/katalog

Przykład:

W tym przykładzie plik o nazwie sample_file.txt już istnieje w moim folderze Dokumenty, dlatego polecenie cp z flagą -i pyta mnie, czy chcę go zastąpić. Plik zostanie nadpisany, jeśli wpiszę y w tym wierszu.

Przykład 4: Kopiowanie plików wraz z pełnym wyjściem

Pełne wyjście wyświetla, co robi polecenie. Można to włączyć do polecenia cp z przełącznikiem -v w następujący sposób:

$ cp -v plik źródłowy /cel/katalog

Przykład:

W poniższym przykładzie widać, jak polecenie cp wyświetla szczegółowe dane wyjściowe podczas kopiowania polecenia:

Przykład 5: Rekursywne kopiowanie katalogu

Użycie opcji -r z poleceniem cp rekursywnie kopiuje wszystkie pliki i foldery z katalogu do innej lokalizacji. Oto jak możesz użyć polecenia cp w tym scenariuszu:

$ cp -r katalog1 katalog2

Przykład:

W poniższym przykładzie cały folder 1 wraz ze wszystkimi jego plikami zostanie skopiowany do folderu 2.

Później zweryfikowałem zawartość folderu 2 za pomocą polecenia ls. Folder2 zawiera teraz kopię folderu źródłowego.

Przykład 6: Rekursywne kopiowanie katalogu z zachowaniem archiwum

Używając przełącznika -a z poleceniem cp, możesz zrobić dwie rzeczy naraz:

Oto jak możesz użyć polecenia cp w tym scenariuszu:

$ cp -a katalog1 katalog2

Przykład:

W poniższym przykładzie cały folder 1 wraz ze wszystkimi jego plikami zostanie skopiowany do folderu 2. Ponadto pliki zostaną zarchiwizowane jako zweryfikowane później za pomocą polecenia ls -l.

Przykład 7: Skopiuj plik, jeśli jest nowszy niż plik docelowy

Czasami chcesz skopiować plik do katalogu docelowego tylko wtedy, gdy jest nowszy niż plik docelowy. Można to zrobić za pomocą przełącznika -u z poleceniem cp:

$ cp -u plikźródłowyLUBkatalogźródłowy /cel/katalog

Przykład:

W tym przykładzie edytowałem plik sample_file.txt z mojego folderu źródłowego. Te pliki zostały już skopiowane do folderu docelowego przed edycją pliku. Można to zobaczyć w następującym wyniku polecenia ls -l:

Teraz, kiedy skopiowałem folder źródłowy do folderu docelowego, pełne dane wyjściowe potwierdziły, że skopiowany zostanie tylko ten plik, który był edytowany przeze mnie.

Przykład 8: Skopiuj plik, ale nie nadpisuj, jeśli plik docelowy już istnieje

Możesz powiedzieć poleceniu cp, aby nie nadpisywało pliku, jeśli już istnieje w lokalizacji docelowej. Można to zrobić za pomocą przełącznika -n w następujący sposób:

$ cp -n plik_źródłowy /cel/katalog

Przykład:

W tym przykładzie najpierw próbowałem skopiować plik do lokalizacji docelowej, w której już istniał. Przełącznik -i zapytał mnie, czy chcę go zastąpić over.

W drugim poleceniu dodałem przełącznik -n. Zignorował przełącznik -i, ale nie nadpisał już istniejącego pliku w katalogu docelowym.

Przykład 9: Utwórz dowiązanie symboliczne do pliku w katalogu docelowym

Za pomocą przełącznika -s w poleceniu cp można utworzyć dowiązanie symboliczne do pliku źródłowego w folderze docelowym zamiast kopiowania pliku źródłowego.

$ cp -s plik_źródłowy /cel/katalog

Przykład:

W poniższym przykładzie utworzyłem dowiązanie symboliczne do pliku sample_file.txt w folderze docelowym.

Później zweryfikowałem obecność dowiązania symbolicznego w folderze docelowym za pomocą polecenia „ls -l”.

Przykład 10: Utwórz twardy link do pliku w katalogu docelowym

Gdy tworzysz stałe łącze do pliku w innym folderze, plik nie jest kopiowany do folderu docelowego; zamiast tego tworzony jest twardy link do pliku źródłowego. Numer i-węzła zarówno pliku źródłowego, jak i skopiowanego twardego łącza jest taki sam. Oto jak utworzyć twardy link:

$ cp -l plik_źródłowy /cel/katalog

Przykład:

W tym przykładzie utworzyłem twardy link do pliku źródłowego w folderze Dokumenty.

Za pomocą polecenia „ls -il” sprawdziłem, że zarówno oryginalny plik, jak i twardy link mają te same numery i-węzłów.

To było wszystko, co musisz wiedzieć, aby opanować polecenie cp w systemie Linux. Używając kombinacji tych przełączanych, możesz znacznie bardziej dostosować kopiowanie plików.

Gry Najlepsze gry wiersza poleceń dla systemu Linux
Najlepsze gry wiersza poleceń dla systemu Linux
Wiersz poleceń jest nie tylko twoim największym sprzymierzeńcem podczas korzystania z Linuksa - może być również źródłem rozrywki, ponieważ możesz go ...
Gry Najlepsze aplikacje do mapowania gamepada dla systemu Linux
Najlepsze aplikacje do mapowania gamepada dla systemu Linux
Jeśli lubisz grać w gry na Linuksie za pomocą gamepada zamiast typowego systemu wprowadzania klawiatury i myszy, jest kilka przydatnych aplikacji dla ...
Gry Przydatne narzędzia dla graczy Linuksa
Przydatne narzędzia dla graczy Linuksa
Jeśli lubisz grać w gry w systemie Linux, prawdopodobnie używałeś aplikacji i narzędzi, takich jak Wine, Lutris i OBS Studio, aby poprawić wrażenia z ...