Content
Data
License: GNU
Version number: GNU fileutils 4.0
Short description:
The cp command copies files (or, optionally, directories). It can be used to copy a single file to a specified location, or even an infinite number of files in a destination directory.
Man page output
man cp
CP(1) General Commands Manual CP(1)
NÉV
cp - fájlok és könyvtárak másolása
ÁTTEKINTÉS
cp [opciók] fájl útvonal
cp [opciók] fájl... könyvtár
POSIX opciók: [-fipRr] [--]
GNU opciók (legrövidebb forma): [-abdfilprsuvxPR] [-S UTÓTAG] [-V
{numbered,existing,simple}] [--sparse=MIKOR] [--help] [--version] [--]
LEÍRÁS
A cp parancs fájlokat (vagy, opcionálisan, könyvtárakat) másol. Másolható vele
egyetlen fájl a megadott helyre, vagy akár végtelenül sok fájl egy
célkönyvtárba.
Ha az utolsó argumentum egy létező könyvtárat jelöl, a cp minden forrás fájlt
abba a könyvtárba másol be (ugyanazon nevet megtartva). Ellenben, ha csak két
fájl adott, az elsőt a másodikra másolja. Hibát jelent, ha az utolsó argumentum
nem könyvtár, és több mint két nem-opció argumentum van megadva.
(Így a `cp -r /a /b' /a-t /b/a-ba másolja és a /a/x-et /b/a/x-be akkor, ha a /b
létezik, de /a-t /b-be és /a/x-et /b/x-be helyezi, ha korábban nem volt /b
könyvtár.
A másoláskor keletkező fájlok és könyvtárak jogai ugyanazok lesznek, mint az
eredeti állományoké, 0777 értékkel végzett ÉS művelet után és a felhasználó
umask-jával módosítva (kivéve, ha a -p opció meg van adva). (A rekurzív másolás
idejére az újonnan keletkezett könyvtárak átmenetileg a végleges mód helyett az
S_IRWXU (0777) értékkelel és VAGY művelettel képzett módot kapják meg, hogy a
processz olvasni, írni és keresni tudja ezeket a könyvtárakat).
Semmi nem történik akkor, ha egy fájlt önmagába másolunk (kivéve azt, hogy
valószínűleg hibaüzenetet kapunk). Ha egy létező másik fájlba másolunk, az az
`open(path, O_WRONLY | O_TRUNC)' hívással lesz megnyitva. Új fájlba másolás
esetén az állomány az `open(path, O_WRONLY | O_CREATE, mód)' segítségével lesz
létrehozva. Amennyiben ez sikertelen, a fájl már létezett; ha a -f opció lett
megadva, a cp megpróbálja törölni a meglévő fájlt (vagy megszüntetni a
linkelését), majd ha ez lezajlik, új fájlként végzi el rajta a másolást.
POSIX OPCIÓK
A POSIX négy és fél opciót ismer:
-f A létező fájlok törlése, amennyiben szükséges (lásd feljebb).
-i A létező célfájlok felülírására rákérdez. (A kérdést az stderr-re írja, a
választ az stdin-ről olvassa be. Csak megerősítő válasz esetén másol.)
-p Megőrzi az eredeti fájl tulajdonosát, csoportját, jogosultságait
(beleértve a setuid és setgid biteket), az utolsó módosítás valamint az
utolsó hozzáférés idejét. Ha a tulajdonos és csoport duplikálása
sikertelen, a setuid és setgid bitek törlődnek. (Megjegyzendő, hogy
ezután az eredeti és a másolat utolsó hozzáférési ideje eltérhet, mivel a
másolás művelete a forrásfájlhoz való hozzáférést takar).
-R A könyvtárakat rekurzívan másolja és a megfelelő műveleteket végzi az
olyan objektumokon, amelyek nem hagyományos fájlok illetve könyvtárak.
(Így egy FIFO vagy speciális fájl másolata is FIFO vagy speciális fájl
lesz).
-r A könyvtárakat rekurzívan másolja, illetve valamilyen nem specifikált
műveletet végez az olyan objektumokon, amelyek nem hagyományos fájlok
illetve könyvtárak. (Ezért lehetséges és voltaképp támogatott a -r opció
használata a -R szinonimájaként, de nem lehet kizárni, hogy a cp
jelenlegi GNU verziója (lásd lentebb) ostobán viselkedik az ilyen
esetekben.)
-- Lezárja az opciók listáját.
GNU LEÍRÁS
Általában véve, a fájlok rögtön az olvasás után írásra kerülnek. A kivételek
tekintetében lásd alább a --sparse opciót.
Alapértelmezésben a `cp' nem másol könyvtárakat (lásd alább az -r opciót).
A cp általában visszautasítja a fájl önmagába való másolását, a következő
kivétellel: ha a --force és a --backup opció van megadva, a forrás és a cél
azonos és egy szokványos fájlra utal, a cp a megszokott módon egy mentésfájlt
(backup) készít (a megadottak szerint egyszerűt vagy számozottat). Ez akkor
hasznos, ha egyszerűen másolatot akarunk készíteni egy fájlról a módosítása
elott.
GNU OPCIÓK
-a, --archive
Amennyire csak lehetséges, megőrzi az eredeti fájlok struktúráját és
jellemzőit (attributes) a másolatban. Ugyanaz, mint -dpR.
-d, --no-dereference
A szimbolikus csatolásokat (symbolic link) szimbolikus csatolásként
másolja ahelyett, hogy az általuk mutatott fájlokat másolná, továbbá
megőrzi az erős csatolás (hard link) kapcsolatokat a forrásfájlok között
a másolatban.
-f, --force
A létező célfájlok törlése, rákérdezés nélkül.
-i, --interactive
A felhasználó megkérdezése arról, hogy felülírhatók-e a létező célfájlok.
-l, --link
Erős csatolások (hard link) létrehozása a nem könyvtár állományok
másolása helyett.
-p, --preserve
Megőrzi az eredeti fájl tulajdonosát, csoportját, jogosultságait és
időbélyegeit.
-P, --parents
A célfájlok nevének kialakítása a következőképpen történik: a célkönyvtár
neve egy perjellel (/), majd a forrásfájl(ok) nevével lesz kiegészítve. A
cp-nek átadott utolsó argumentum egy létező könyvtár neve kell legyen.
Például a `cp --parents a/b/c existing_dir' parancs az a/b/c fájlt
existing_dir/a/b/c -be másolja, létrehozva az összes hiányzó köztes
könyvtárat.
-r A könyvtárak rekurzív másolása. A nem könytár és nem szimbolikus link
fájlokat (pl. FIFO-k és speciális fájlok) reguláris fájlként másolja. Ez
azt jelenti, hogy minden forrásból megpróbálja olvasni az adatokat és a
célba írni. Így, ezzel az opcióval a `cp' nem meghatározható módon
elakadhat egy FIFO vagy a /dev/tty olvasásakor. (Ez egy hiba. Ez azt
jelenti, hogy kerülni kell a -r használatát és a -R-et érdemes választani
akkor, amikor a másolt struktúra tartalmával nem vagyunk tisztában. Egy
ismeretlen eszközfájl (például scanner) megnyitása váratlan hatással
lehet a hardverre.)
-R, --recursive
A könyvtárakat rekurzívan másolja, megőrizve a nem könyvtár fájlokat
(lásd fentebb a -r opciót).
--sparse= MIKOR
Egy `ritka fájl' `lyukakat' tartalmaz - nulla bájtok sorozatát, amelyek
nem foglalnak fizikai diszk-blokkokat; a `read' rendszerhívás ezeket
nullaként olvassa. Ez egyrészt jelentős helyet takaríthat meg, másrészt
növeli a sebességet, mivel számos bináris állomány tartalmaz sok
folyamatos nulla bájtot. Alapértelmezésben a cp egy durva heurisztikus
módszerrel megtalálja a lyukakat a bemeneti fájlokban és a megfelelő
kimeneti állományt is ritkává teszi.
A MIKOR érték a következő lehet:
auto Ez az alapviselkedés: a kimeneti fájl ritka, ha a bemeneti is az.
always A kimeneti fájl mindig ritka. Ez olyankor hasznos, ha az
inputfájlt tartalmazó fájlrendszer nem támogatja a ritka
állományokat, a fogadó fájlrendszer azonban igen.
never A kimeneti fájl sohasem ritka. Ha találsz alkalmazást erre az
opcióra, szóljál nekünk is.
-s, --symbolic-link
A nem-könytár fájlokról másolat helyett szimbolikus csatolást hoz létre.
Minden forrásfájlnév abszolút kell legyen (azaz `/'-rel kezdődjön) hacsak
nem a célfájlok az aktuális könyvtárban vannak. Ez az opció hibaüzenetet
eredményez olyan rendszerekben, amelyek nem támogatják az szimbolikus
csatolásokat.
-u, --update
Nem másolja azokat a nem-könyvtár fájlokat, amelyeknek azonos vagy újabb
módosítási idővel rendelkező célfájlja létezik.
-v, --verbose
Kiírja minden fájl nevét, mielőtt másolná.
-x, --one-file-system
Átlépi azokat az alkönytárakat, amelyek más fájlrendszerekben vannak,
mint az, amelyben a másolás elkezdődött.
GNU MENTÉSI (BACKUP) OPCIÓK
Szükség esetén az olyan programok GNU verziói, mint pl. a cp, mv, ln, install és
patch, mentést fognak végezni az olyan fájlokról, amelyek felülíródnak,
megváltoznak vagy törlődnek. A mentés szükségességét a -b opció jelzi. Azt,
hogy a mentésfájlok nevét hogyan kell képezni, a -V opció adja meg. Abban az
esetben, ha a mentésfájl nevét az eredeti névhez egy utótag toldásával kell
képezni, a -S kapcsolóval lehet kijelölni az utótagot.
-b, --backup
Mentést készít azokról a fájlokról, amelyek felülíródnak vagy törlődnek.
-S UTÓTAG, --suffix=UTÓTAG
Minden mentésfájl nevének végéhez hozzáfűzi a UTÓTAG-ot. Ha ez az opció
nincsen megadva, a SIMPLE_BACKUP_SUFFIX környezeti változó értékét
használja. Amennyiben a környezeti változó sem adott, a végződés `~'
lesz.
-V MÓD, --version-control=MÓD
Megadja, hogy a mentések hogyan lesznek elnevezve. A MÓD argumentum lehet
`numbered' (vagy `t'), `existing' (vagy `nil') vagy `never' (vagy
'simple'). Ha ez az opció nincsen megadva, akkor a VERSION_CONTROL
környezeti változó értékét használja. Ha VERSION_CONTROL/-nak nincs
értéke, az alapértelmezett mentési típus az `existing'.
Ez az opció megfelel az Emacs `version-control' változójának. A MÓD
lehetséges értékei (egyértelmű rövidítések elfogadva):
`t'vagy`numbered'
Mindig sorszámozott mentés készül.
`nil'vagy`existing'
Sorszámozott biztonsági mentést készít azokról a fájlokról,
melyeknek már van, a többiekről pedig egyszerű mentést.
`never'vagy`simple'
Mindig egyszerű mentés készül.
SZABVÁNYOS GNU OPCIÓK
--help Használati útmutatót ír a szabványos kimenetre, majd kilép.
--version
A program verziójáról ír ki információt a szabványos kimenetre, majd
kilép.
-- Lezárja az opciók listáját.
KÖRNYEZET
A LANG, LC_ALL, LC_COLLATE, LC_CTYPE és LC_MESSAGES környezeti változók a
szokásos jelentéssel rendelkeznek. A GNU verzióban a SIMPLE_BACKUP_SUFFIX és a
VERSION_CONTROL változók a fent leírt módon szabályozzák a mentésfájlok
elnevezését.
MEGFELELŐSÉG
POSIX 1003.2
MEGJEGYZÉSEK
Ez az oldal azt a cp-t írja le, ami a fileutils-4.0 csomagban található; más
változatok némileg eltérhetnek.
Javításokat és kiegészítéseket az aeb@cwi.nl címre lehet küldeni (angolul).
A hibákat a fileutils-bugs@gnu.ai.mit.edu címen lehet jelenteni (angolul).
MAGYAR FORDÍTÁS
Horváth András <horvatha@rs1.szif.hu>
Magyari Miklós <magyari@freemail.hu>
GNU fileutils 4.0 November 1998 CP(1)
Help output
cp --help
Használat: cp [KAPCSOLÓ]… [-T] FORRÁS CÉL
vagy: cp [KAPCSOLÓ]… FORRÁS… KÖNYVTÁR
vagy: cp [KAPCSOLÓ]… -t KÖNYVTÁR FORRÁS…
A FORRÁST a CÉLRA, vagy több FORRÁST a KÖNYVTÁRBA másol.
A hosszú kapcsolók kötelező argumentumai a rövid kapcsolókhoz is kötelezők.
-a, --archive ugyanaz, mint a -dR --preserve=all
--attributes-only nem másol fájladatokat, csak az attribútumokat
--backup[=CONTROL] minden létező célfájlról mentést készít
-b mint a --backup, de nem fogad el argumentumot
--copy-contents rekurzió esetén a speciális fájlok tartalmát is
másolja
-d mint a --no-dereference --preserve=links
-f, --force ha egy létező célfájlt nem lehet megnyitni,
akkor törli azt, majd újrapróbálja (figyelmen
kívül marad a -n kapcsoló használatakor)
-i, --interactive felülírás előtt kérdez
-H parancssori szimbolikus linkek követése a
FORRÁSBAN
-l, --link fájlok hard linkelése másolás helyett
-L, --dereference a szimbolikus linkek követése mindig a FORRÁSBAN
-n, --no-clobber ne írjon felül meglévő fájlt (felülbírálja a
korábbi -i kapcsolót)
-P, --no-dereference soha ne kövesse a szimbolikus linkeket a
FORRÁSBAN
-p mint a --preserve=mode,ownership,timestamps
--preserve[=ATTR_LISTA] megadott attribútumok megtartása (alap:
mode,ownership,timestamps), ha lehet
további attribútumokat is: context, links,
xattr, all
--no-preserve=ATTR_LISTA nem őrzi meg a megadott attribútumokat
--parents teljes forrásfájlnév használata a KÖNYVTÁR alatt
-R, -r, --recursive könyvtárak rekurzív másolása
--reflink[=EKKOR] klón/CoW másolatok vezérlése. Lásd alább.
--remove-destination minden célfájl törlése, még mielőtt megpróbálná
megnyitni (ellentétben a --force kapcsolóval)
--sparse=EKKOR ritka fájlok létrehozásának szabályozása.
Lásd alább.
--strip-trailing-slashes eltávolítja a befejező osztásjeleket minden
egyes FORRÁS argumentumról
-s, --symbolic-link szimbolikus link létrehozása másolás helyett
-S, --suffix=KITERJESZTÉS a biztonsági másolat szokásos kiterjesztésének
felülbírálása
-t, --target-directory=KÖNYVTÁR minden FORRÁS argumentum másolása a
megadott KÖNYVTÁRBA
-T, --no-target-directory a CÉL kezelése normál fájlként
-u, --update csak akkor másol, ha a CÉL fájl régebbi mint a
FORRÁS, vagy ha a CÉL nem létezik
-v, --verbose elmagyarázza, mi történik
-x, --one-file-system az adott fájlrendszeren marad
-Z a célfájl SELinux biztonsági környezetének
beállítása az alapértelmezett típusra
--context[=CTX] mint a -Z, vagy ha a CTX meg van adva, akkor
a SELinux vagy SMACK biztonsági környezet
beállítása CTX értékre
--help ezen súgó megjelenítése és kilépés
--version verzióinformációk megjelenítése és kilépés
Alapértelmezésben a program kitalálja, hogy a FORRÁS fájl ritka-e vagy nem.
Amennyiben igen, a megfelelő CÉL fájl is ritka lesz. Ez a --sparse=auto
kapcsolónak megfelelő viselkedés. Megadható a --sparse=always kapcsoló,
ekkor a CÉL fájl ritka lesz, amennyiben a FORRÁS megfelelő mennyiségű nulla
bájtot tartalmaz.
A --sparse=never kapcsolóval letiltható a ritka fájlok létrehozása.
A --reflink[=always] megadásakor könnyűsúlyú másolást végez, ahol az
adatblokkok csak módosítás esetén lesznek másolva. Ha ez nem lehetséges, akkor
a másolás meghiúsul, vagy ha --reflink=auto megadásakor hagyományos másolás
kerül végrehajtásra.
A biztonsági másolat kiterjesztése „~”, hacsak nincs megadva a --suffix vagy
a SIMPLE_BACKUP_SUFFIX használatával. A verziókövetés módját megválaszthatod a
--backup kapcsolóval vagy a VERSION_CONTROL környezeti változó segítségével.
Az érvényes értékek a következők:
none, off nem készít mentést (még a --backup megadása esetén sem)
numbered, t számozott mentést készít
existing, nil számozott, ha már létezik számozott változat, egyébként
egyszerű
simple, never mindig egyszerű biztonsági mentés
Kivételt képez, amikor a cp biztonsági mentést készít a FORRÁSRÓL és a force
és backup kapcsolók egyaránt meg vannak adva, továbbá a FORRÁS és a CÉL ugyanaz a szabályos fájl.
A(z) GNU coreutils online súgója: <http://www.gnu.org/software/coreutils/>
A(z) cp fordítási hibái a <http://bug.openscope.org/> címen jelenthetők.
Teljes dokumentáció itt: <http://www.gnu.org/software/coreutils/cp>
vagy helyileg elérhető: info '(coreutils) cp invocation'
Related Content
- 1900 views