da.phhsnews.com


da.phhsnews.com / Sådan kopieres en fil til flere mapper med en kommando i Linux

Sådan kopieres en fil til flere mapper med en kommando i Linux


Kopiering af en fil med Linux-kommandolinjen er let. Men hvad hvis du vil kopiere den samme fil til flere forskellige steder? Det er også nemt, og vi viser dig, hvordan du gør det med en kommando.

Normalt vil du bruge kommandoencpfor at linke til kildefilen og destinationen katalog:

cp ~ / Dokumenter / FileToBeCopied.txt ~ / TextFiles /

For at kopiere den til to andre mapper, ville mange mennesker bare køre kommandoen to gange med forskellige destinationer:

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

Vi kan dog gøre den samme opgave med en kommando:

echo dir1 dir2 dir3 | xargs -n 1 cp file1

Sådan fungerer denne kommando. Kommandoenechoskriver normalt til skærmen. Men i dette tilfælde ønsker vi at føje output fra kommandoenechosom input til kommandoenxargs. For at gøre dette bruger vi pipesymbolet (|), som feeds output fra en kommando som input til en anden. Kommandoenxargskører kommandoencptre gange, hver gang der tilføjes den næste katalogvej, der er ledet til den fra kommandoenechotil slutningen af ​​cpkommando. Der er tre argumenter, der sendes tilxargs, men kommandoen-n 1på kommandoenxargsfortæller det kun at tilføje et af disse argumenter ad gangen tilcpkommandoen hver gang den køres.

Så for at holde fast ved vores eksempel fra tidligere kan de tre separatecpkommandoer ovenfor kombineres til en kommando som denne:

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

Bemærk, at hvis filen, der kopieres, findes i en af ​​de angivne destinationsmapper, vil filen i den pågældende destination automatisk blive erstattet. Du bliver ikke spurgt, om du vil erstatte filen. (Normalt, når du bruger kommandoencptil at kopiere en fil til et enkelt sted, kan du tilføje optionen-ifor at spørge om du vil erstatte en eksisterende fil.-ier en interaktiv mulighed (det får kommandoencptil at bede om input fra brugeren), og du kan ikke bruge en interaktiv mulighed medcpkommando, når du bruger den i forbindelse medxargs.)

En anden ting at overveje, er at hvis du kopierer en meget stor fil, vil du måske tilføje den no-clobber (n) til kommandoencpi kommandoen ovenfor. Denne indstilling forhindrer automatisk, at en fil overskrives i en destination, hvis den allerede findes der. Hvis du kopierer en meget stor fil via et netværk, kan det være langsomt, og du vil muligvis undgå at bruge de nødvendige ressourcer til at kopiere og erstatte filen. Følgende kommando tilføjer valgmuligheden-nog vil ikke kopiere filen til en destination, der er angivet i argumenterne til ekkooversigten, hvis filen allerede findes i den pågældende destination.

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

Skriv man ekko, mand xargs eller man cp på kommandolinjen i Linux for mere information om nogen af ​​disse kommandoer.


Den billigste måde at streame TV på: Drej dine abonnementer

Den billigste måde at streame TV på: Drej dine abonnementer

Helt siden kablerne af kabelbundne er alt, hvad vi nogensinde har ønsket, at betale for de shows, vi vil se. Nu hvor alle og deres moderselskab har et streaming abonnement, kan du gøre det ... men hvis du abonnerer på Netflix, Hulu, Amazon, HBO Now og alle de andre, du ønsker, kan det ende med at koste så meget som kabel.

(how-top)

Sådan markerer du meddelelser som læst så snart du klikker på dem i Outlook

Sådan markerer du meddelelser som læst så snart du klikker på dem i Outlook

Har du nogensinde irriteret, at Outlook ikke markerer meddelelser som læst, så snart du klikker og ser dem ind læsepanelet? Her viser vi dig, hvordan du laver Outlook markere dem som læst, så snart de er åbnet. Som standard vil Outlook ikke markere en meddelelse som læst, før du vælger en anden meddelelse.

(how-top)