Linux-opdrachten

Linux cp-opdracht

Linux cp-opdracht
"cp" is een ingebouwde tool voor alle op UNIX gebaseerde platforms die worden gebruikt om kopieën te maken van de bestanden en map(pen). Zoals de naam van de tool suggereert, is "cp" een afkorting van "kopie".

Er zijn talloze kopieer- en plakopties in het systeem, toch?? Bijna allemaal worden ze uitgevoerd met behulp van "cp". Het is een zeer simplistische tool met simplistisch gebruik. Er zijn echter een aantal interessante kanttekeningen die u moet weten.

Laten we zonder verder oponthoud eens kijken naar het gebruik van "cp" op Linux. Ik zal het gebruik op Manjaro Linux demonstreren - een geweldige Linux-distro gebaseerd op Arch Linux. Leer hoe u Manjaro Linux installeert.

Voor elke Linux-tool wil ik mijn gids beginnen met de volgende:.

welke cp

"die" toont het volledige pad van de uitvoerbare bestanden die van kracht zouden zijn als de opdracht zou worden uitgevoerd. In dit geval, wanneer "cp" wordt uitgevoerd, wordt het gestart vanuit de map "/usr/bin".

cp-gebruik

"cp" gebruikt de volgende commandostructuur voor al zijn acties.

cp

Laten we bijvoorbeeld de demo-zip-bestanden naar de map "DestinationFolder" kopiëren.

cp 1.zip Bestemmingsmap/

Bekijk de doelmap om het resultaat te verifiëren.

cd Bestemmingsmap/
ls

"cp" kan ook een duplicaat van hetzelfde bestand maken. De bestemmingsnaam moet echter anders zijn dan de originele. Bovendien mag er geen ander bestand zijn met een vergelijkbare naam. Anders zal "cp" proberen het bestaande bestand te overschrijven.

cp 1.zip 1_kopie.zip

Directory kopiëren

"cp" kan ook mappen kopiëren. Er zijn echter vergelijkbare regels voor het kopiëren van bestanden van toepassing. De bestemming moet een unieke naam hebben. Anders worden de gegevens overschreven.

cp -r DestinationFolder/ DestinationFolder_copy/

De vlag "-r" zorgt ervoor dat als "cp" naar een map kijkt, deze ook wordt gekopieerd. Anders accepteert "cp" het kopiëren van mappen niet.

Nogmaals, in zo'n situatie zijn er een paar andere regels van toepassing. In het bovenstaande voorbeeld bestond de doelmap "DestinationFolder_copy" niet, dus heeft "cp" deze gemaakt. Als de bron echter 2 of meer mappen tegelijkertijd heeft, moet de bestemming bestaan. Anders lukt het kopiëren niet.

Bekijk het resultaat.

boom DestinationFolder_copy2/

Meerdere bestanden kopiëren

Met "cp" kunt u ook een aantal bestanden tegelijk kopiëren. De bestemming moet echter een map zijn.

cp *.zip Bestemmingsmap

Uitgebreide modus

Dit is erg handig als je met een groot aantal bestanden werkt of als de bestanden erg groot zijn.

cp --uitgebreide bestand.txt-bestemmingsmap/

Nu kopieer ik een aantal bestanden in de uitgebreide modus. Deze functie kan ook worden gestapeld met andere "cp" -vlaggen.

cp --verbose * DestinationFolder/

Interactief kopiëren

Als u niet zeker weet of er een dubbel bestand is of een bestand met dezelfde naam, is deze optie buitengewoon handig. Elke keer dat "cp" met een conflict wordt geconfronteerd, zal het om uw prompt vragen. Het zal het bestand alleen overschrijven als u dit toestaat. Anders wordt het bestand overgeslagen.

"DestinationFolder" bevat bijvoorbeeld al alle demobestanden. Laten we ze nu opnieuw proberen te kopiëren in de interactieve modus.

cp --verbose -i *.zip Bestemmingsmap

Zoals in het voorbeeld te zien is, zijn er 2 antwoorden: "y" voor Ja (begin overschrijven) en "n" voor Nee (sla het bestand over).

Bestandskenmerken behouden

Elk afzonderlijk bestand in het Linux-systeem bevat een heleboel aanvullende informatie, bijvoorbeeld bestandsrechten, de laatste keer dat het bestand is gewijzigd en geopend, en andere. Meestal maakt het echt niet uit. Echter, in sommige gevoelig scenario's, kan dit veel uitmaken.

Telkens wanneer "cp" een bestand kopieert, kopieert het alleen de gegevens, niet deze "attributen". Laten we een live demo houden.

Laten we eerst eens kijken naar het bestandskenmerk van de "1".Zip bestand.

ls -l 1.zip

Kopieer het nu naar de "DestinationFolder" en controleer de kenmerken opnieuw.

cp --uitgebreide 1.zip Bestemmingsmap/

Controleer de attributen.

ls -l Bestemmingsmap/1.zip

Het is een normaal bestand gemaakt, daarom blijven de meeste kenmerken hetzelfde attribute. De enige merkbare verandering is het tijdstip van het (de) aanmaakbestand(en). In het geval van andere systeemkritieke bestanden spelen verschillende attributen een grote rol. We gaan de demo ook zien.

Gebruik de vlag "-p" om de kenmerken hetzelfde te houden.

cp -p --uitgebreide 1.zip Bestemmingsmap/1.zip

Nu is het tijd om de demo met een systeembestand te bekijken. Herinnert iemand zich Vim? Het is een van de beste teksteditors die iedereen zou moeten leren. Ondanks dat het eeuwenoud is, kan het vrijwel elke "moderne" functie van een teksteditor bieden, dankzij de geweldige vimrc. Meer informatie over vimrc.

Laten we eens kijken naar het systeem vimrc. De oorspronkelijke kenmerken zijn als volgt:.

ls -l /etc/vimrc

Kopieer het naar "DestinationFolder" en bekijk de wijzigingen in attributen.

cp --verbose /etc/vimrc ~/Desktop/DestinationFolder/

Bijna alles is veranderd, toch? Gebruik nu de vlag "-p" om elk attribuut te behouden. Deze keer hebben we "sudo" -toegang nodig.

sudo cp --verbose -p /etc/vimrc ~/Desktop/DestinationFolder/

ls -l /etc/vimrc ~/Desktop/DestinationFolder/vimrc

Voila! Alles is nu hetzelfde!

"cp" back-up

Dit is echt een handige functie. Als u bestanden met een vergelijkbare naam gaat kopiëren, is het standaardgedrag van "cp" om de bestaande te overschrijven. Met deze optie maakt "cp" echter een reservekopie van het conflicterende bestand met een andere naam en voltooit het proces.

Laten we bijvoorbeeld de 1 . kopiëren.zip in "DestinationFolder" met back-up ingeschakeld.

cp -b 1.zip Bestemmingsmap/

Ik stond "cp" toe om de bestaande 1 . te overschrijven.zip-bestand, maar in plaats daarvan maakte het een back-up van het reeds bestaande bestand met ~ aan het einde.

Kopie forceren

In sommige situaties kan "cp" een probleem hebben met het schrijven van het bestand naar de bestemming vanwege het toestemmingsprobleem. In een dergelijk scenario moet de vlag "-f" worden gebruikt. Deze vlag dwingt "cp" om eerst het doelbestand te verwijderen en de inhoud van de bron te kopiëren.

Wees echter voorzichtig; als je deze actie uitvoert op een kritiek bestand, zoals een belangrijke systeemconfiguratie, kan dit een groot probleem veroorzaken. Gebruik het met de nodige voorzichtigheid.

cp -f

Laatste gedachten

Er zijn talloze manieren om "cp" te gebruiken. Dit zijn niet het enige gebruik van "cp". Als je geïnteresseerd bent in meer diepgaande kennis over, neem dan gerust een kijkje op de man- en infopagina's!

man cp

info cp

Genieten!

Shadow of the Tomb Raider voor Linux-zelfstudie
Shadow of the Tomb Raider is de twaalfde toevoeging aan de Tomb Raider-serie - een actie-avonturengame-franchise gemaakt door Eidos Montreal. De game ...
Hoe FPS te verhogen in Linux?
FPS staat voor Beelden per seconde. De taak van FPS is om de framesnelheid te meten bij het afspelen van video's of speluitvoeringen. In eenvoudige wo...
Top Oculus App Lab-games
Als je eigenaar bent van een Oculus-headset, moet je op de hoogte zijn van sideloading. Sideloading is het proces van het installeren van niet-winkeli...