nl.phhsnews.com


nl.phhsnews.com / Een bestand naar meerdere mappen kopiëren met één opdracht in Linux

Een bestand naar meerdere mappen kopiëren met één opdracht in Linux


Het kopiëren van een bestand met de Linux-opdrachtregel is eenvoudig. Maar wat als u hetzelfde bestand naar verschillende locaties wilt kopiëren? Dat is eenvoudig en we laten u zien hoe u dat met één opdracht doet.

Normaal gesproken, om één bestand te kopiëren, gebruikt u de opdrachtcp, die linken naar het bronbestand en de bestemming map:

cp ~ / Documents / FileToBeCopied.txt ~ / TextFiles /

Om het naar nog twee mappen te kopiëren, zouden veel mensen de opdracht gewoon nog twee keer uitvoeren, met verschillende bestemmingen:

cp ~ / Documents /FileToBeCopied.txt ~ / Dropbox /
cp ~ / Documents / FileToBeCopied.txt / media / lori / MYUSBDRIVE /

We kunnen echter dezelfde taak uitvoeren met één opdracht:

echo dir1 dir2 dir3 | xargs -n 1 cp file1

Zo werkt deze opdracht. De opdrachtechoschrijft normaal gesproken naar het scherm. In dit geval willen we de uitvoer van de opdrachtechoechter invoeren als invoer voor de opdrachtxargs. Om dit te doen, gebruiken we het pijpsymbool (|) dat de uitvoer van de ene opdracht voedt als invoer naar een andere. Met de opdrachtxargswordt de opdrachtcpdriemaal uitgevoerd, waarbij telkens het volgende directorypad wordt toegevoegd aan de opdrachtechotot aan het einde van decpcommando. Er zijn drie argumenten die worden doorgegeven aanxargs, maar de-n 1optie op dexargsopdracht vertelt het om slechts één van die argumenten tegelijk toe te voegen decp-opdracht elke keer dat het wordt uitgevoerd.

Om dus bij ons voorbeeld van eerder te blijven, kunnen de drie afzonderlijkecp-opdrachten hierboven worden gecombineerd in één opdracht als deze:

echo ~ / TextFiles / ~ / Dropbox / media / lori / MYUSBDRIVE | xargs -n 1 cp ~ / Documents / FileToBeCopied.txt

Merk op dat als het bestand dat wordt gekopieerd bestaat in een van de gespecificeerde doelmappen, het bestand in die bestemming automatisch zal worden vervangen. U wordt niet gevraagd of u het bestand wilt vervangen. (Als u de opdrachtcpgebruikt om een ​​bestand naar één locatie te kopiëren, kunt u de optie-itoevoegen om te vragen of u een bestaand bestand wilt vervangen. de-ioptie is een interactieve optie (het zorgt ervoor dat decpopdracht om invoer vraagt ​​van de gebruiker) en u kunt geen interactieve optie gebruiken met decpcommando bij gebruik in combinatie metxargs.)

Een ander ding om te overwegen, is dat als je een heel groot bestand kopieert, je misschien het no-clobber wilt toevoegen (- n) optie in de opdrachtcpin de bovenstaande enkele opdracht. Deze optie voorkomt automatisch dat een bestand wordt overschreven in een bestemming als het daar al bestaat. Als u een zeer groot bestand via een netwerk kopieert, is het mogelijk traag en wilt u mogelijk niet de bronnen gebruiken die nodig zijn om het bestand te kopiëren en te vervangen. Met de volgende opdracht wordt de optie-ntoegevoegd en wordt het bestand niet naar een bestemming in de argumenten naar de echo-instructie gekopieerd, als het bestand al in die bestemming bestaat.

echo ~ / TextFiles / ~ / Dropbox / media / lori / MYUSBDRIVE | xargs -n 1 cp -n ~ / Documents / FileToBeCopied.txt

Typ man echo, man xargs of man cp op de opdrachtregel in Linux voor meer informatie over een van deze opdrachten.


Specifieke mensen stoppen met zien van je Instagramverhaal

Specifieke mensen stoppen met zien van je Instagramverhaal

De verhaalfunctie van Instagram is ongelooflijk populair; het heeft nu meer dagelijkse gebruikers dan Snapchat, de app die het kopieert. Het probleem is dat, tenzij je een privé Instagram-account hebt, iedereen, inclusief je moeder, je kan volgen. Als je foto's van je wilde feestjes wilt plaatsen op je Instagramverhaal, maar ook een ongemakkelijk familiediner wilt vermijden, kun je hier zien hoe je bepaalde mensen kunt blokkeren om het te bekijken.

(how-top)

Een contact via sms delen via Android

Een contact via sms delen via Android

"Hey man, heb je het nummer van Dan? Ik moet hem ergens over op de hoogte brengen. "(Stupid Jerry, hij bewaart nummers nooit op zijn telefoon.) Je zou het kunnen opzoeken en het gewoon in een bericht typen ... of je zou Dan's volledige contactkaart kunnen delen, om het te maken eenvoudiger op Jerry. Het delen van contactkaarten is eigenlijk de gemakkelijkste manier om dergelijke situaties aan te pakken - er is geen gedoe om het nummer op te zoeken, het te onthouden terwijl je het typt (of heen en weer te springen tussen apps om het te krijgen) rechts) en vervolgens verzenden.

(how-top)