cp (linux command)

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

  •  

 

Tags