cp
cp és una ordre de la família dels sistemes operatius Unix que permet copiar fitxers i directoris. La comanda té tres maneres d'operació, indicats segons la seva invocació, la qual cosa possibilita copiar un arxiu en un altre, un o més arxius a un directori, o bé un directori en
Tipus | utilitat UNIX |
---|---|
Part de | GNU Core Utilities |
És molt important aclarir que hi ha variacions de la comanda 'cp' entre els Sistemes Operatius de la família Unix, bàsicament amb l'addició de nous paràmetres. Així i respecten l'estàndard POSIX, la qual cosa garanteix una compatibilitat bàsica entre tots ells.
Mode d'operació
modificaLa comanda cp té tres maneres d'operar, els quals es dedueixen segons els arguments passats en la seva invocació. Això pot ser quan se li indica a cp el següent:
- Dues arxius: la comanda copia el contingut del primer arxiu al segon, creant aquest últim si és necessari.
- N arxius seguits d'un directori:cp còpia dels N arxius en el directori indicat, creant si cal.
- Dues directoris: la comanda còpia tots els arxius i subdirectoris del primer directori al segon. Aquesta manera requereix el paràmetre r. Si el directori usat com a destinació existeix el primer directori és copiat dins d'aquest, sinó és creat.
Mode d'ús
modificaLa invocació de la comanda té el següent format segons la versió POSIX: cp [PARÀMETRES] ORIGEN ... DESTINACIÓ
En cas de tractar que ORIGEN sigui un o diversos arxius seva invocació consisteix en: cp [-FIP] ORIGEN .. DESTINACIÓ
D'altra banda en cas que ORIGEN sigui un directori, obligatòriament cal indicar l'ús recursiu (-r o-R) i s'habiliten la utilització de determinats paràmetres:[1] cp-r | R [-H |-P |-L] [-FIP] ORIGEN DESTÍ
A continuació es detallen els paràmetres:
- -F
- Si el destí no pot ser escrit, procedeix a eliminar-lo. Això es realitza previ a què 'cp' comenci a operar.
- -P
- S'inclouen els atributs d'ORIGEN a DESTÍ. Això es refereix a la data de modificació, data d'accés, ID d'usuari i grup, permisos, etc.
- -I
- Consulta a l'usuari si sobreescriu o no la destinació en cas que aquest existeixi.
- -R,-r
- Còpia recursivament els directoris.
- -H
- Si ORIGEN és un enllaç simbòlic opera amb l'apuntat.
- -L
- Ordena a 'cp' a seguir els enllaços simbòlics dins ORIGEN, perquè en DESTINACIÓ es copiï l'apuntat, i no el mateix enllaç.
- -P
- No se segueixen els enllaços simbòlics dins ORIGEN, i per tant en DESTINACIÓ es copia el mateix enllaç.
Paràmetres existents a la versió GNU coreutils
modificaEs llisten a continuació algun dels paràmetres de la versió de cp present en GNU Coreutils:
,-A, - archive: Equivalent a-dR - preservi = all
,-B, - backup [= MANERA]: Realitza una còpia de seguretat (backup) per cada fitxer existent en DESTINACIÓ
- MANERA:
- 'None', 'off'
- Mai fer backup.
- 'Numbered', 't'
- Fer backups numerats.
- 'Existing', 'nil'
- Fer backups numerats d'aquells arxius que el tingui el i simple backup dels altres.
- 'Simple', 'never'
- Fer backup simples.
- -D
- equivalent a - no-dereference - preservi = links
- - Force
- Equivalent al-f (POSIX)
- - Interactive
- Equivalent al-i (POSIX)
- - Dereference
- Equivalent al-L (POSIX)
- -N, - no-clobber
- No sobreescriure un arxiu existent. El paràmetre-i queda sense efecte.
- - No-dereference
- Equivalent al-P (POSIX)
- -P, - preserve [= LLISTA D'ATRIBUTS]
- Equivalent a-p (POSIX). Si no s'indiquen atributs l'opció default és: mode, ownership, timestamps.
- LLISTA D'ATRIBUTS:
- 'Model'
- preserva els bits de manera i les llistes de control d'accés.
- 'Ownership'
- conserva a l'usuari i grup amos.
- 'Timestamps'
- conserva els temps d'accés i modificació.
- 'Links'
- preserva en els arxius de destí qualsevol link que hi hagi entre els arxius d'origen.
- 'Context'
- conserva el context de seguretat de SELinux
- 'Xattr'
- conserva els atributs estesos.
- 'All'
- conserva tots els atributs.
- - No-preservi [= LLISTA D'ATRIBUTS]
- No preserva els atributs. El seu ús és idèntic a - preservi.
- - Recursive
- Equivalent a-r o-R (POSIX)
- -S, - suffix = suffix
- Defineix el sufix usat en els backups (-b)
- -T, - target-directory = DIRECTORI
- Copiar tots els arxius definits en ORIGEN dins DIRECTORI
- -T, - no-target-directory
- Considera DESTÍ com un arxiu
,-U, - update: Còpia només quan ORIGEN és més nou que DESTÍ, o bé aquest últim no té definit temps de modificació.
Exemples
modificaCreant una còpia d'un arxiu en el mateix directori : cp fitxer.txt archivo.bkp.txt
Copiar dos arxius en un directori (LesMevesFotos/vacances) cp foto1.jpg foto2.jpg LesMevesFotos/vacances
Copiar un directori amb els seus arxius i subdirectoris, a un altre directori: cp -R /home/usuari/carpeta/home/usuari/DirectoriDesti
Referències
modificaEnllaços externs
modifica- manual de la versió POSIX. versió estàndard per Sistemes Operatius Unix.
- # cp-Invocation manual de GNU coreutils, versió utilitzada pels sistemes operatius GNU / Linux