Vi har kjørt kommandoene og eksemplene nevnt i denne artikkelen på et Debian 10 Buster-system, men du kan replikere dem på nesten alle Linux-distroer.
Linux-kommandolinjen, Terminal, er lett tilgjengelig via applikasjonen. Launcher-søk som følger:
Eksempel 1: Kopiere en enkelt fil til en målkatalog
Den enkleste bruken av cp-kommandoen er å kopiere en enkelt kildefil til en målkatalog. Her er syntaksen du kan bruke til å gjøre det:
$ cp kildefil / mål / katalogEksempel:
I dette eksemplet kopierer jeg en fil som heter sample_file.txt til Dokumenter-mappen min:
Senere bekreftet jeg tilstedeværelsen av filen i målmappen gjennom kommandoen ls.
Eksempel 2: Kopiere flere filer til en målkatalog
Med cp-kommandoen kan du kopiere flere filer til en målkatalog ved å bruke følgende syntaks:
$ cp sourcefile1 sourcefile2 sourcefile3… / target / directoryEksempel:
I dette eksemplet kopierer jeg to eksempler på filer til mappen Dokumenter via cp-kommandoen:
Senere bekreftet jeg tilstedeværelsen av disse filene i målmappen gjennom kommandoen ls.
Eksempel 3: Kopiering av filer på en interaktiv måte
Hvis det finnes en fil med samme navn i målmappen din, kan du bruke cp-kommandoen til å be deg om før du overskriver målfilen. Du kan bruke -i-bryteren på følgende måte:
$ cp -i kildefil / mål / katalogEksempel:
I dette eksemplet, en fil som heter sample_file.txt eksisterer allerede i Dokumenter-mappen min, derfor ber cp-kommandoen med -i-flagget om jeg vil overskrive den. Filen blir overskrevet hvis jeg skriver inn y ved denne meldingen.
Eksempel 4: Kopiere filer sammen med en detaljert utgang
En detaljert utskrift skriver ut hva kommandoen gjør. Dette kan innlemmes i cp-kommandoen med -v-bryteren som følger:
$ cp -v kildefil / mål / katalogEksempel:
Du kan se i følgende eksempel hvordan cp-kommandoen skriver ut en detaljert utgang mens du kopierer en kommando:
Eksempel 5: Kopiere en katalog rekursivt
Ved å bruke alternativet -r med cp-kommandoen kopieres alle filer og mapper i en katalog rekursivt til et annet sted. Slik kan du bruke cp-kommandoen i dette scenariet:
$ cp -r katalog1 katalog2Eksempel:
I det følgende eksemplet kopieres hele mappen 1, med alle filene, til mappen2.
Jeg bekreftet senere innholdet i folder2 gjennom kommandoen ls. Mappen2 inneholder en kopi av kildemappen nå.
Eksempel 6: Kopiere en katalog rekursivt mens du fører et arkiv
Ved å bruke -a-bryteren med cp-kommandoen kan du gjøre to ting samtidig:
- Kopier filer fra en katalog rekursivt til en annen katalog
- Hold tillatelsene, tidsstemplet, symbolske lenker og alle slike egenskaper intakte mens du kopierer filer.
Slik kan du bruke cp-kommandoen i dette scenariet:
$ cp -a katalog1 katalog2Eksempel:
I det følgende eksemplet kopieres hele mappen 1 med alle filene til mappen 2. Filene blir også arkivert som bekreftet senere gjennom kommandoen 'ls -l'.
Eksempel 7: Kopier en fil i tilfelle den er nyere enn målfilen
Noen ganger vil du bare kopiere en fil til målkatalogen hvis den er nyere enn målfilen. Dette kan gjøres ved å bruke -u-bryteren med cp-kommandoen:
$ cp -u sourcefileORsourcedirectory / target / directoryEksempel:
I dette eksemplet redigerte jeg en fil sample_file.txt fra kildemappen min. Disse filene ble allerede kopiert til målmappen før jeg redigerte filen. Dette kan sees i følgende utgang av kommandoen 'ls -l':
Da jeg kopierte kildemappen til målmappen, bekreftet den detaljerte utdata at bare den filen blir kopiert som ble redigert av meg.
Eksempel 8: Kopier en fil, men skriv ikke over hvis en målfil allerede eksisterer
Du kan be cp-kommandoen om ikke å overskrive filen hvis den allerede finnes på målplasseringen. Dette kan gjøres via -n-bryteren som følger:
$ cp -n kildefil / mål / katalogEksempel:
I dette eksemplet prøvde jeg først å kopiere en fil til målplasseringen der den allerede eksisterte. -I-bryteren ba meg om jeg vil overskrive den.
I den andre kommandoen la jeg til -n-bryteren. Den ignorerte -i-bryteren, men overskrev ikke den allerede eksisterende filen i målkatalogen.
Eksempel 9: Opprett en symbolsk lenke til en fil i målkatalogen
Med -s-bryteren i cp-kommandoen kan du opprette en symbolsk lenke til kildefilen i målmappen i stedet for å kopiere kildefilen.
$ cp -s kildefil / mål / katalogEksempel:
I det følgende eksemplet opprettet jeg en symbolsk lenke til filen sample_file.txt i målmappen.
Jeg bekreftet senere tilstedeværelsen av den symbolske lenken i målmappen gjennom kommandoen 'ls -l'.
Eksempel 10: Opprett en hard lenke til en fil i målkatalogen
Når du oppretter en hard lenke til en fil i en annen mappe, kopieres ikke filen til målmappen. i stedet opprettes en hard kobling til kildefilen. Inode-nummeret til både kildefilen og den kopierte hardkoblingen er det samme. Slik lager du en hard lenke:
$ cp -l kildefil / mål / katalogEksempel:
I dette eksemplet opprettet jeg en hard lenke til kildefilen i Dokumenter-mappen.
Gjennom kommandoen 'ls -il' bekreftet jeg at både den originale filen og den harde lenken har samme inodenumre.
Dette var alt du trengte å vite for å mestre cp-kommandoen i Linux. Ved å bruke en kombinasjon av disse byttet, kan du gjøre filkopiering mye mer tilpassbar.