Det er enkelt å kopiere en fil med Linux-kommandolinjen. Men hva om du vil kopiere den samme filen til flere forskjellige steder? Det er også enkelt, og vi vil vise deg hvordan du gjør det med en kommando.
Normalt, for å kopiere en fil, ville du bruke kommandoencp
, koble til kildefilen og destinasjonen katalog:
cp ~ / Dokumenter / FileToBeCopied.txt ~ / TextFiles /
For å kopiere den til to flere kataloger, ville mange bare kjøre kommandoen to ganger med forskjellige destinasjoner:
cp ~ / Dokumenter /FileToBeCopied.txt ~ / Dropbox /
cp ~ / Dokumenter / FileToBeCopied.txt / media / lori / MYUSBDRIVE /
Vi kan imidlertid gjøre samme oppgave med en kommando:
echo dir1 dir2 dir3 | xargs -n 1 cp file1
Slik fungerer denne kommandoen. Kommandoenecho
skriver normalt til skjermen. Men i dette tilfellet ønsker vi å mate utdataene fra kommandoenecho
som input til kommandoenxargs
. For å gjøre dette bruker vi pipesymbolet (|
) som mater utgang fra en kommando som input til en annen. Kommandoenxargs
kjører kommandoencp
tre ganger, hver gang du legger til den neste katalogbanen som er pipet til den fra kommandoenecho
til slutten avcp
-kommandoen. Det er tre argumenter som sendes tilxargs
, men alternativet-n 1
på kommandoenxargs
forteller at det bare skal legges til et av disse argumentene om gangen tilcp
-kommandoen hver gang den kjøres.
Så, for å holde fast ved vårt eksempel fra tidligere, kan de tre separatecp
kommandoene ovenfor kombineres til en kommando som dette:
ekko ~ / Tekstfiler / ~ / Dropbox / media / lori / MYUSBDRIVE | xargs -n 1 cp ~ / Documents / FileToBeCopied.txt
Merk at hvis filen som kopieres finnes i noen av de angitte målkatalogene, blir filen i den destinasjonen erstattet automatisk. Du blir ikke spurt om du vil erstatte filen. (Normalt, når du bruker kommandoencp
for å kopiere en fil til et enkelt sted, kan du legge til alternativet-i
for å spørre om du vil erstatte en eksisterende fil. Alternativet-i
er et interaktivt alternativ (det fører til at kommandoencp
ber om innspilling fra brukeren), og du kan ikke bruke et interaktivt alternativ medcp
kommandoen når du bruker den i forbindelse medxargs
.)
En annen ting å vurdere, er at hvis du kopierer en veldig stor fil, vil du kanskje legge til no-clobber (- n
) til kommandoencp
i kommandoen ovenfor. Dette alternativet forhindrer automatisk at en fil overskrives i en destinasjon hvis den allerede finnes der. Hvis du kopierer en veldig stor fil over et nettverk, kan det være sakte, og du vil kanskje unngå å bruke ressursene som kreves for å kopiere og erstatte filen. Følgende kommando legger til alternativet-n
, og vil ikke kopiere filen til et mål som er oppført i argumentene til ekko-setningen, hvis filen allerede eksisterer i den aktuelle destinasjonen.
echo ~ / TextFiles / ~ / Dropbox / media / lori / MYUSBDRIVE | xargs -n 1 cp -n ~ / Documents / FileToBeCopied.txt
Skriv mann ekko, mann xargs eller mann cp på kommandolinjen i Linux for mer informasjon om noen av disse kommandoene.
Slik går du automatisk på pause i treningsøktene på Apple Watch
Hvis du bruker Apple Watch for kjørene dine, vet du at det er en fin måte å holde oversikt over avstand, tid, tempo og puls. Noen ganger kan det hende du må slutte kort, og glemmer å stoppe klokken din, noe som gir deg unøyaktige resultater. Det er greit, for nå kan du automatisk stille klokken din for å stoppe treningen din når du slutter å flytte, og gjenoppta den når du starter For å gjøre dette, må du først åpne Watch-appen på iPhone, bla ned til og trykke på "Workout".
SmartThings vs Wink vs Insteon: Hvilken Smarthome-hub skal du kjøpe?
Tre av de største navnene i smarthome-hubverdenen er SmartThings, Wink og Insteon, som alle tilbyr en konsumentvennlig hub som lar brukerne koble sammen alle slags smarthome-enheter sammen og administrere dem på ett sted. Men hvilken skal du kjøpe? Her er noen ting å vite om de to knutepunktene, og hvilken som er best for deg.