Android

Cp-kommando i Linux (kopier filer)

Linux Command Line Tutorial For Beginners 8 - cp command

Linux Command Line Tutorial For Beginners 8 - cp command

Innholdsfortegnelse:

Anonim

Når du jobber med Linux- og Unix-systemer, er kopiering av filer og kataloger en av de vanligste oppgavene du utfører til daglig.

cp er et kommandolinjeverktøy for kopiering av filer og kataloger på Unix og Linux-systemer., vil vi forklare hvordan du bruker cp kommandoen.

Hvordan bruke cp kommando

Den generelle syntaks for cp kommandoen er som følger:

cp SOURCE… DESTINATION

SOURCE kan inneholde en eller flere filer eller kataloger som argumenter, og DESTINATION argumentet kan være en enkelt fil eller katalog.

  • Når SOURCE og DESTINATION argumentene begge er filer, kopierer cp kommandoen den første filen til den andre. Hvis filen ikke eksisterer, oppretter kommandoen den. Når SOURCE har flere filer eller kataloger som argumenter, må DESTINATION argumentet være en katalog. I denne situasjonen blir SOURCE filene og -katalogene flyttet til DESTINATION katalogen. Når SOURCE og DESTINATION argumentene begge er kataloger, kopierer cp kommandoen den første katalogen til den andre.

For å kopiere filer og kataloger, må du minst ha lesetillatelser på kildefilen og skrive tillatelse i destinasjonsmappen. Ellers vises en tillatelse nektet feil.

Kopiere filer med cp Kommando

Det mest grunnleggende scenariet med å bruke cp er å kopiere en fil i den gjeldende arbeidskatalogen. For å kopiere en fil som heter file.txt til file_backup.txt du for eksempel følgende kommando:

cp file file_backup

eller

cp file{, _backup}

Hvis du vil kopiere en fil til en annen katalog, angir du den absolutte eller relative banen til destinasjonsmappen.

Når bare katalognavnet er spesifisert som et mål, har den kopierte filen samme navn som originalfilen.

I eksemplet file.txt kopierer vi filen file.txt til /backup katalogen:

cp file.txt /backup

cp file.txt /backup/new_file.txt

Hvis destinasjonsfilen eksisterer, blir den som standard overskrevet. Alternativet -n forteller cp ikke å overskrive en eksisterende fil.

Bruk alternativet -i å tvinge cp til å be om bekreftelse.

cp -i file.txt file_backup.txt

cp -u file.txt file_backup.txt

Når du kopierer en fil, eies den nye filen av brukeren som kjører kommandoen. Bruk alternativet -p for å bevare filmodus, eierskap og tidsstempler:

cp -p file.txt file_backup.txt

Et annet alternativ som kan være nyttig er -v , som forteller cp å skrive ut ordinær utskrift:

cp -v file.txt file_backup.txt

'file.txt' -> 'file_backup.txt'

Kopierer kataloger med cp Command

Hvis du vil kopiere en katalog, inkludert alle filer og underkataloger, bruker du alternativet -R eller -r .

I eksemplet nedenfor kopierer vi katalogen Pictures til Pictures_backup :

cp -R Pictures Pictures_backup

Kommandoen over oppretter destinasjonskatalogen, og kopierer alle filer og underkataloger rekursivt fra kilden til destinasjonskatalogen.

Hvis destinasjonskatalogen allerede eksisterer, kopieres selve kildekatalogen og alt innholdet i destinasjonskatalogen. Hvis du vil kopiere bare filene og underkatalogene, men ikke målkatalogen, bruker du alternativet -T :

cp -RT Pictures Pictures_backup

En annen måte å kopiere bare katalogens innhold, men ikke selve katalogen, er å bruke jokertegnet ( * ). Ulempen med følgende kommando er at den ikke kopierer de skjulte filene og katalogene (de som begynner med en prikk . ):

cp -RT Pictures/* Pictures_backup/

Alle alternativene vi brukte i forrige seksjon når du kopierer filer, kan også brukes når du kopierer kataloger. Hovedforskjellen er at når du kopierer kataloger. du trenger alltid å bruke alternativet -R .

Kopier flere filer og kataloger

Hvis du vil kopiere flere filer og kataloger samtidig, angir du navnene og bruker destinasjonskatalogen som det siste argumentet:

cp file.txt dir file1.txt dir1

Når du kopierer flere filer, må destinasjonen være en katalog.

Konklusjon

Det er en enkel oppgave å kopiere filer og kataloger med cp kommandoen. For informasjon om alle tilgjengelige cp alternativer, skriv man cp i terminalen.

Hvis du vil kopiere filer over nettverket, bruker du verktøyene rsync og scp .

cp terminal