cp – polecenie UNIXowe służące głównie do kopiowania plików. Pliki mogą być skopiowane w tym samym katalogu, innym katalogu, a nawet innym systemie plików czy dysku twardym. Jeśli plik jest kopiowany do tego samego katalogu, musi mieć inną nazwę, niż plik pierwotny. W pozostałych przypadkach nazwa może być taka sama lub zmieniona. Oryginalny plik pozostaje wtedy bez zmian. Komenda cp ma wiele wariantów, dwa najważniejsze zawarte są w GNU i POSIX.

Składnia Skopiowanie pliku 'plik1' do pliku 'plik2' (nadpisanie jednego na drugi w tym samym katalogu): cp plik1 plik2

Skopiowanie pliku 'plik' do katalogu 'katalog': cp plik katalog

Skopiowanie katalogu 'katalog1' do katalogu 'katalog2': cp -r katalog1 katalog2

Należy pamiętać, że pod pojęciem katalogu rozumiemy podanie pełnej ścieżki wraz z jego nazwą.

Opcje, z którymi można wykonać polecenie:

-F – plik docelowy zostanie usunięty, jeżeli nie będzie można wykonać na nim operacji zapisu. -P – podczas wykonywania komendy, kopiowane są dowiązania symboliczne. -i – użytkownik jest proszony o podanie nazwy pliku, który zostanie nadpisany. -r lub -R – kopiowanie rekurencyjne -p – kopiowanie charakterystycznych cech pliku i lokalizacji źródłowych wraz z cechami pliku docelowego oraz, gdy zachodzi taka potrzeba, lokalizacji docelowej. Kopiowane parametry to czas ostatniej modyfikacji, czas ostatniego korzystania z pliku, ID użytkownika oraz ID grupy (tylko jeśli mamy na to pozwolenie), bity ustawień dostępu do pliku, SUID i SGID. -v – kopiowanie verbose, podczas którego na bieżąco dostajemy informacje o tym, jakie operacje są aktualnie wykonywane

Użyteczne przykłady Kopiowanie pliku 'plik' do katalogu 'katalog' zawartego w folderze domowym i zapisanie w nowym pliku czasu modyfikacji oraz ustawień dostępu z pliku źródłowego: cp -p plik /home/katalog

Kopiowanie wszystkich plików z katalogu 'katalog1' do katalogu 'katalog2': cp /home/katalog1/* /home/katalog2 Należy pamiętać, że kopiowane są jedynie pliki bez całej wewnętrznej struktury podkatalogów. Jeżeli chcemy wykonać kopię z katalogami, uruchamiamy komendę z opcją '-r' oraz usuwamy '*' ze ścieżki katalogu źródłowego: cp -r /home/katalog1/ /home/katalog2

Kopiujemy kilka plików o nazwach 'plik1', 'plik2' oraz 'plik3' do katalogu 'katalog': cp plik1 plik2 plik3 /home/katalog Kopiujemy kilka plików o nazwach 'plik1', 'plik2' oraz 'plik3' do katalogu 'katalog', uruchamiamy komendę z opcją '-v': cp -v plik1 plik2 plik3 /home/katalog

'plik1' -> '/home/katalog/plik1' 'plik2' -> '/home/katalog/plik2' 'plik3' -> '/home/katalog/plik3'

Powiązane hasła Inne komendy związane z kopiowaniem, plikami oraz katalogami: cpio – kopiowanie całej struktury z katalogu do katalogu. tar – tworzenie pliku archiwalnego zawierającego dany plik lub katalog. ln – tworzenie ścieżki do pliku lub katalogu. mv – przenoszenie pliku lub katalogu. rm – usunięcie pliku lub katalogu. chmod – zmiana ustawień dostępu dotyczących pliku lub katalogu. chown – zmiana właściciela pliku lub katalogu. chgrp – zmiana grupy pliku lub katalogu. UUCP – kopiowanie pliku lub katalogu między różnymi wersjami systemu UNIX. scp – bezpieczne kopiowanie za pośrednictwem protokołów SSH.

Linki zewnętrzne

Kategoria:Polecenia Unix