Linux cp kommando tutorial for begyndere (8 eksempler)

Hvis du er ny på Linux, er det værd at vide, at kommandolinjen er et meget kraftfuldt værktøj, der er i stand til at gøre næsten alle de opgaver, du kan gøre via den grafiske grænseflade. Men oftere end ikke, vil du finde dig selv at lave enkle opgaver på kommandolinjen. En sådan simpel opgave er at kopiere filer / mapper.

Linux cp kommandoen giver dig mulighed for at kopiere filer og mapper via kommandolinjen. I denne tutorial vil vi diskutere den grundlæggende brug af dette værktøj ved hjælp af letforståelige eksempler. Men før vi gør det, er det værd at dele, at alle eksempler / instruktioner, der er nævnt i denne artikel, er blevet testet på Ubuntu 16.04LTS.

Linux cp kommando

Behov for at udføre en kopiering på kommandolinjen, cp skal være din go-to-kommando. Ifølge sin man side kan værktøjet bruges til at kopiere både filer og mapper. Her er kommandos generiske syntaks:

cp [OPTION] ... SOURCE DEST

Ovenstående kommando kopierer SOURCE til DEST. Følgende Q & A-typeeksempler giver dig en bedre ide om, hvordan værktøjet fungerer.

Q1. Sådan udføres grundlæggende kopiering?

Den grundlæggende brug af cp er meget let - alt du skal gøre er at angive kilden og destinationen. F.eks. Findes følgende kommandokopier 'file1' i den aktuelle arbejdsmappe til skrivebordskataloget:

cp file1 ~ / Desktop

Q2. Hvordan laver man cp prompt før overskrivning?

Hvis destinationen, hvor du kopierer filen, allerede indeholder en fil med samme navn, overskriver kommandoen cp lyden tydeligt den eksisterende fil. Men hvis du ønsker det, kan du gøre værktøjslinjen før overskrivning er færdig. Dette kan gøres ved at køre cp i interaktiv tilstand, som er aktiveret ved hjælp af -i valgmulighed.

For eksempel:

cp -i file1 ~ / Desktop /

Sådan laver du cp prompt før overskrivning

Så som du kan se i skærmbilledet ovenfor, er -i mulighed gør cp spørg brugeren om den eksisterende fil med samme navn skal overskrives i destinationsmappen eller ej.

Q3. Hvordan tvinge cp til ikke at overskrive eksisterende fil?

Nogle gange vil du måske ikke have, at cp skal overskrive en eksisterende fil, og du vil heller ikke aktivere den interaktive indstilling, som vi lige har diskuteret i det foregående afsnit. Så for disse situationer kan du bruge -n kommandolinje indstilling.

For eksempel:

cp -n file1 ~ / Desktop /

Vær opmærksom på at -n overstyrer -i indstillingen, hvilket betyder, selvom du har brugt -i med -n, vil kommandoen ikke køre i interaktiv tilstand.

Q4. Sådan kopieres mapper ved hjælp af cp?

Som standard fungerer cp-kommandoen kun for filer. Hvis du prøver at kopiere en mappe, vil du sandsynligvis få en fejlmeddelelse "cp: omitting directory". Så, når kravet er at kopiere en mappe, skal du bruge -r kommandolinje indstilling.

For eksempel:

cp -r dir ~ / Desktop

Q5. Hvordan oprettes symbolske links ved hjælp af cp-kommandoen?

Hvis du vil, kan du også bede cp om at oprette et symbolsk link i stedet for at kopiere en fil. Dette kan gøres ved hjælp af -s kommandolinje indstilling.

For eksempel:

cp-s ~ / htf-dagligt / file1 ~ / Desktop /

Sådan oprettes symbolske links ved hjælp af cp-kommandoen

Q6. Hvordan laver cp kun overskrivelsesfil, hvis kilden er nyere?

Nogle gange er kravet kun at overskrive eksisterende fil, når kildefilen er nyere - tænk på denne proces som opdatering af filen. Dette kan gøres ved hjælp af -u kommandolinje indstilling.

Antag for eksempel, at du vil kopiere 'file1', der er bosat i den nuværende arbejdskatalog, til skrivebordskataloget, men destinationen har allerede en fil ved navn 'file1'. Og du vil kun kopiere, hvis kilde er nyere end destination. Dette kan opnås ved at bruge følgende kommando:

cp -u file1 ~ / Desktop

Q7. Hvordan man laver cp, følger ikke symbolske links i kilden?

Som standard følger cp-kommandoen symbolske links i kilden. Dette betyder, at hvis du for eksempel prøver at kopiere en fil, der er et symbolsk link til en anden, så kopieres handlingen som standard den fil, som det symbolske link henviser til. Hvad jeg mener er, hvis ~ / Desktop / file1 er et symbolsk link til ~ / Htf dagligt / file1, og du forsøger at kopiere ~ / Desktop / file1 til ~ / Downloads, derefter ~ / Htf dagligt / file1 vil blive kopieret der.

Men hvis kravet er at kopiere det symbolske link selv, kan dette gøres muligt ved hjælp af -P kommandolinje indstilling, som beder cp ikke følge symbolske links i kilde. Så i vores tilfælde ville kommandoen være:

cp -P ~ / Desktop / file1 ~ / Downloads /

Q8. Sådan kopieres kun filattributter?

Nogle gange kan kravet kun være at kopiere attributter (som ejerskab og tidsstempler), og ikke indholdet af filen. Dette kan opnås ved hjælp af -attributes kun kommandolinje indstilling sammen med -bevare valgmulighed.

For eksempel har filen1 følgende egenskaber:

-rw-rw-r-- 1 root himanshu 97 juni 14 17: 18 file1

Og file2 har følgende attributter:

-rw-rw-r-- 1 root himanshu 179 Maj 25 15: 09 file2

Noter: Du kan bruge ls kommando for at hente disse attributter for en fil. For mere information om ls, hoved her.

Og kravet er at kopiere attributter af file2 og få dem til file1 også, så her er hvordan dette kan gøres:

cp -attributes-only -preserve file2 file1

Her er ovennævnte kommando i aktion:

Sådan kopieres kun filattributter

Konklusion

Som du er enig i, er den grundlæggende brug af cp-kommandoen ikke meget svært at forstå. I denne vejledning har vi forsøgt at dække de fleste af de nyttige kommandolinjevalg. Prøv dem ved din ende, og derefter gå til værktøjets man side for at se hvilke andre funktioner / muligheder kommandoen tilbyder. I tilfælde af tvivl eller forespørgsel, slip en kommentar nedenfor.

Kilde

Giv en kommentar

Dette websted bruger Akismet til at reducere spam. Lær, hvordan dine kommentardata behandles.