Hoe kopieer ik een directory/map in Linux via de commandoregel?
Er zijn verschillende commando’s in Linux besturingssystemen om een map te kopiëren. De opdracht cp helpt u daarbij. Om bestanden op uw server te organiseren, moet u kopiëren. Met cp commando, kunt u een directory en een hele subdirectory met de inhoud en alles eronder te kopiëren. cp en rsync zijn een van de meest populaire commando’s voor het kopiëren van bestanden en directory.
In deze tutorial, zullen we uitleggen hoe je de map te kopiëren in Linux besturingssysteem.
Basissyntaxis van cp Command
cp commando wordt gebruikt om bestanden of mappen te kopiëren in Linux. Het maakt een exacte kopie van een bestand op een schijf met een andere naam.
De basissyntaxis van cp is hieronder weergegeven:
cp Source Destination
cp Source-1 Source-2 Source-3 Destination
U zou alle opties die beschikbaar zijn met cp commando moeten zien door het volgende commando uit te voeren:
cp --help
U zou het volgende scherm moeten zien:
Mappen kopiëren met cp-commando
Als u een map wilt kopiëren, inclusief alle bestanden en submappen, gebruikt u de optie -R of -r bij het commando cp.
Kopieert u bijvoorbeeld de map /etc naar de map /opt met het volgende commando:
cp -R /etc /opt/
Het bovenstaande commando maakt een doelmap aan en kopieert alle bestanden en submappen recursief naar de map /opt.
Als de doelmap al bestaat en u alleen de bestanden en submappen wilt kopiëren, maar niet de doelmappen, voert u het commando cp uit met de optie -T, zoals hieronder wordt weergegeven:
cp -RT /etc /opt/
Als u de gespecificeerde attributen wilt behouden, zoals eigendom, tijdstempels, context en koppelingen, voert u het commando cp uit met de optie -a, zoals hieronder wordt weergegeven:
cp -aR /etc /opt/
Als u uitvoer wilt weergeven tijdens het kopieerproces, gebruikt u de optie -v bij het commando cp:
cp -avR /etc /opt/
U zou de uitvoer zoals hieronder weergegeven moeten zien:
Als u alleen de inhoud van de map /etc naar /opt wilt kopiëren, moet u het jokerteken met het sterretje opgeven zoals hieronder weergegeven:
cp -avR /etc/* /opt/
Als u meerdere mappen, zoals /etc en /var, naar de map /opt wilt kopiëren, voert u het volgende commando uit:
cp -avR /etc /var /opt/
Noot: om mappen te kopiëren, moet u leesrechten hebben op de bronmap en schrijfrechten op de doelmap.
Directories kopiëren met het commando rsync
rsync is een geavanceerd hulpprogramma voor het kopiëren van bestanden waarmee u directory’s van de lokale naar de externe locatie kunt kopiëren.
De basis syntax van rsync commando wordt hieronder getoond:
rsync SOURCE DESTINATION
U kunt alle opties zien die beschikbaar zijn met rsync commando zoals hieronder getoond:
rsync --help
U zou het volgende scherm moeten zien:
Om de map /etc naar /opt te kopiëren, voert u het volgende commando uit:
rsync -a /etc /opt
In het bovenstaande commando zal de optie -a een map kopiëren met al zijn toestemmingen en andere informatie, inclusief het recursief kopiëren. Als de doelmap bestaat, zal rsync deze overschrijven.
Als u alleen de inhoud van de /etc directory wilt kopiëren, zet dan een schuine streep / aan het eind van /etc:
rsync -a /etc/ /opt
U kunt rsync gebruiken met -v optie om de verbose output weer te geven zoals hieronder getoond:
rsync -av /etc /opt
U zou het volgende scherm moeten zien:
Als u de voortgang tijdens het kopieerproces wilt weergeven, voert u rsync uit met de optie -P, zoals hieronder wordt weergegeven:
rsync -avP /etc /opt
U kunt ook de optie -z gebruiken met het commando rsync om de bestandsgegevens tijdens de overdracht te comprimeren:
rsync -avz /etc /opt
Als u een specifieke directory van de bron wilt uitsluiten, voert u het volgende commando uit:
rsync -a --exclude 'directoryname' /opt/
Om meerdere directory’s uit te sluiten, voert u het volgende commando uit:
rsync -a --exclude {'directory1', 'directory2', 'directory3'} /opt/
Als u meerdere directory’s naar /opt wilt kopiëren, voert u het volgende commando uit:
Conclusie
In de bovenstaande tutorial hebben we geleerd hoe u een directory kunt kopiëren met de commando’s cp en rsync. Voor meer informatie kunt u de officiële documentatie van Rsync raadplegen op Rsync Doc.