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