Tiedostojen ja hakemistojen kopiointi Linuxissa
tiedostojen ja hakemistojen kopiointi on yksi yleisimmistä tehtävistä komentorivillä työskenneltäessä. Tiedostojen kopiointiin on Linuxissa useita komentoja, joista cp
ja rsync
ovat käytetyimmät työkalut.
on yleinen käytäntö käyttää cp
komentoa tiedostojen kopioimiseen ja rsync
hakemistojen kopioimiseen.
tiedostojen ja kansioiden kopioiminen edellyttää, että lähdetiedostossa on vähintään lukuoikeudet ja kohdehakemistossa kirjoitusoikeudet.
tiedostojen kopiointi CP-komennolla #
Linux-ja Unix-käyttöjärjestelmissä cp
komentoa käytetään tiedostojen ja hakemistojen kopioimiseen.
yksinkertaisin käyttötapaus on kopioida tiedosto nykyiseen työhakemistoon. Esimerkiksi kopioidaksesi tiedoston nimeltä file.txt
tiedostoon nimeltä file_backup.txt
nykyisessä hakemistossa suoritetaan seuraava komento:
cp file.txt file_backup.txt
Jos kohdetiedosto on olemassa, se korvataan. Saadaksesi vahvistuskehotteen ennen tiedostojen ylikirjoittamista, käytä valitsinta -i
.
cp -i file.txt file_backup.txt
oletuksena käytettäessä cp
komentoa tiedoston kopioimiseen uusi tiedosto on komennon suorittavan käyttäjän omistuksessa. Käytä -p
– vaihtoehtoa tiedoston tilan, omistuksen ja aikaleimojen säilyttämiseen:
cp -p file.txt file_backup.txt
toinen käyttökelpoinen vaihtoehto on -v
. Tätä valintaa käytettäessä komento tulostaa mitä tehdään:
cp -v file.txt file_backup.txt
'file.txt' -> 'file_backup.txt'
Kopioi tiedosto hakemistoon #
kopioidaksesi tiedoston hakemistoon, määritä absoluuttinen tai suhteellinen polku hakemistoon. Kun kohdehakemisto jätetään pois, tiedosto kopioidaan nykyiseen hakemistoon.
seuraavassa esimerkissä kopioidaan tiedostoa file.txt
/backup
hakemistoon:
cp file.txt /backup
määritettäessä vain hakemiston nimi kohdekohteeksi, kopioidulla tiedostolla on sama nimi kuin alkuperäisellä tiedostolla.
Jos haluat kopioida tiedoston eri nimellä, sinun täytyy määrittää haluttu tiedostonimi:
cp file.txt /backup/new_file.txt
yllä oleva komento kopioi tiedoston määriteltyyn hakemistoon nimellä new_file.txt
.
kopioi useita tiedostoja #
kopioidaksesi useita tiedostoja ja kansioita kerralla, määritä lähdetiedostojen ja-kansioiden nimet, joita seuraa kohdehakemisto viimeisenä parametrina:
cp file.txt dir file1.txt file2.txt dir1
kun kopioidaan useita tiedostoja, kohteen on oltava Hakemisto.
cp
– komennolla voi myös käyttää kuviosovitusta. Esimerkiksi kopioidaksesi kaikki .png
tiedostot nykyisestä hakemistosta /backup
hakemistoon, käyttäisit:
cp *.png /backup
kopioivat hakemistoja cp-komennolla #
kopioidaksesi hakemiston, mukaan lukien kaikki sen tiedostot ja alikansiot, käytä valitsinta -R
tai -r
. Seuraavassa esimerkissä kopioimme hakemistoa Pictures
to Pictures_backup
:
cp -R Pictures Pictures_backup
yllä oleva komento luo kohdehakemiston ja kopioi rekursiivisesti kaikki tiedostot ja alikansiot lähteestä kohdehakemistoon.
Jos kohdehakemisto on jo olemassa, itse lähdehakemisto ja sen sisältö kopioidaan kohdehakemistoon. Kopioidaksesi vain tiedostot ja alikansiot, mutta ei kohdehakemistoa, käytä -T
– valintaa:
cp -RT Pictures Pictures_backup
tiedostoja kopioidessa käytettyjä vaihtoehtoja voidaan käyttää myös kansioita kopioidessa. Suurin ero on, että hakemistoja kopioidessa on käytettävä -R
– vaihtoehtoa.
tiedostojen ja hakemistojen kopiointi rsync-komennolla #
rsync
on nopea ja monipuolinen komentorivityökalu, joka synkronoi tiedostot ja hakemistot kahden sijainnin välillä. Sen avulla voidaan kopioida tiedostoja paikallisiin ja etäpaikkoihin.
rsync
sisältää monia vaihtoehtoja, jotka ohjaavat sen käyttäytymisen jokaista osa-aluetta
hyödyllisin vaihtoehto on -a
joka kopioi rekursiivisesti hakemistoja, siirtää erikois-ja blokkilaitteita ja säilyttää symboliset linkit, muutosajat, ryhmän, omistuksen ja käyttöoikeudet.
kopioidaksesi yksittäisen tiedoston paikasta toiseen, ajaisit seuraavan komennon:
rsync -a file.txt file_backup.txt
Jos kohdetiedosto on olemassa, rsync
korvaa sen.
samalla komennolla voidaan kopioida kansiota:
rsync -a /var/www/public_html/ /var/www/public_html_backup/
rsync
uhkaa perään viistoon päättyviä lähdehakemistoja /
eri tavalla. Jos lisäät lähdehakemistoon perään viivan, komento kopioi vain lähdehakemiston sisällön kohdehakemistoon. Kun perusviiva jätetään pois, rsync
kopioi lähdehakemiston kohdehakemiston sisälle. Turvallisin vaihtoehto on aina sisällyttää perusviiva /
sekä kohteeseen että lähteeseen.
lisätietoja rsync
tarkista seuraavat artikkelit:
- miten Rsync: tä käytetään paikalliseen ja etätietojen siirtoon ja synkronointiin
- miten Rsync: n tiedostot ja hakemistot suljetaan pois
johtopäätös #
olemme näyttäneet, miten tiedostoja ja hakemistoja kopioidaan Linux-ja Unix-pohjaisissa järjestelmissä, käyttäen cp
ja rsync
Utilities.
Leave a Reply