Hvordan kopiere en fil til flere kataloger i Linux


Mens du lærer Linux, er det alltid normen for nybegynnere å fortsette å skrive flere kommandoer for å utføre en enkel oppgave. Dette er forståelig, spesielt når man bare begynner å bli vant til å bruke terminalen.

Men mens du ser frem til å bli en Linux-kraftbruker, kan det å lære det jeg vil referere til som "snarveiskommandoer" redusere tendenser til å kaste bort tid betydelig.

I denne artikkelen vil vi forklare en enkel måte, ved å bruke en enkelt kommando for å kopiere en fil til flere kataloger i Linux.

I Linux brukes cp-kommandoen til å kopiere filer fra en katalog til en annen, den enkleste syntaksen for å bruke den er som følger:

cp [options….] source(s) destination

Alternativt kan du også bruke kommandoen advanced-copy, som viser en fremdriftslinje mens du kopierer store filer/mapper i Linux.

Tenk på kommandoene nedenfor, normalt vil du skrive to forskjellige kommandoer for å kopiere den samme filen til to separate kataloger som følger:

cp -v /home/aaronkilik/bin/sys_info.sh /home/aaronkilik/test
cp -v /home/aaronkilik/bin/sys_info.sh /home/aaronkilik/tmp

Hvis du antar at du vil kopiere en bestemt fil til opptil fem eller flere kataloger, betyr dette at du må skrive inn fem eller flere cp-kommandoer?

For å gjøre unna dette problemet, kan du bruke ekkokommandoen, en pipe, xargs-kommando sammen med cp-kommandoen i skjemaet nedenfor:

echo /home/aaronkilik/test/ /home/aaronkilik/tmp | xargs -n 1 cp -v /home/aaronkilik/bin/sys_info.sh

I skjemaet ovenfor blir banene til katalogene (dir1,dir2,dir3…..dirN) ekkoet og sendt som input til xargs-kommandoen der:

  1. -n 1 – forteller xargs å bruke maksimalt ett argument per kommandolinje og sende til cp-kommandoen.
  2. cp – brukes til å kopiere en fil.
  3. -v – aktiverer detaljert modus for å vise detaljer om kopieringsoperasjonen.

Prøv å lese gjennom man-sidene til kommandoene cp, echo og xargs for å finne nyttig og avansert bruksinformasjon:

man cp
man echo
man xargs

Det er alt, du kan sende oss spørsmål i forhold til emnet eller tilbakemeldinger gjennom kommentarskjemaet nedenfor. Det kan også være lurt å lese om fremdriftskommandoen som hjelper deg med å overvåke fremdriften til (cp, mv, dd, tar, etc.) kommandoer som for øyeblikket kjører i Linux.