10.5 Kopiowanie i przenoszenie plików

10.5.1 cp

W Linuksie za kopiowanie plików odpowiada polecenie cp(1). Użytkownicy DOSa zauważą podobieństwa tej nazwy do nazwy polecenia copy. Polecenie cp posiada wiele opcji, dlatego też przed jego użyciem warto zajrzeć na strony manuala.

Najoczywistszy sposób użycia polecenia cp to oczywiście skopiowanie pliku z jednego miejsca w drugie. Przykładzik:

% cp hejaz /tmp

Spowoduje to skopiowanie pliku hejaz: z katalogu w którym aktualnie się znajdujemy do katalogu /tmp.

Wielu użytkowników chciałoby przy kopiowaniu pozostawić niezmienione czasy pliku, jak w poniższym przykładzie:

% cp -a hejaz /tmp

Takie użycie polecenia cp zapewnia, że czasy dostępu, modyfikacji itp. pozostaną niezmienione przy kopiowaniu.

By rekursywnie skopiować zawartość jednego katalogu do drugiego, trzeba wykonać następujące polecenie:

% cp -R mydir /tmp

Zaowocuje to skopiowaniem katalogu mydir do katalogu /tmp.

Jeżeli życzysz sobie skopiować katalog bądź plik, ale chcesz pozostawić bez zmian wszystkie jego czasy oraz prawa dostępu, użyj cp -p.

% ls -l file
-rw-r--r--    1 root     vlad            4 Jan  1 15:27 file
% cp -p file /tmp
% ls -l /tmp/file
-rw-r--r--    1 root     vlad            4 Jan  1 15:27 file

cp posiada jeszcze wiele innych opcji, szczegółowo opisanych na stronach manuala.

10.5.2 mv

mv(1) przenosi pliki z jednego miejsca w drugie. Brzmi raczej łatwo, co nie?

% mv oldfile /tmp/newfile

mv posiada kilka użytecznych opcji, opisanych w manualu. Niemniej jednak bardzo rzadko bywają one używane w praktyce.

Grenlandia 2012