Sådan kopieres en fil til flere biblioteker i Linux


Mens du lærer Linux, er det altid normen for nybegyndere at fortsætte med at skrive flere kommandoer for at udføre en simpel opgave. Dette er forståeligt, især når man bare bliver vant til at bruge terminalen.

Men når du ser frem til at blive en Linux-strømbruger, kan det at lære, hvad jeg vil betegne som "genvejskommandoer", reducere tidsspildende tendenser betydeligt.

I denne artikel forklarer vi en nem måde ved hjælp af en enkelt kommando til at kopiere en fil til flere mapper i Linux.

I Linux bruges cp-kommandoen til at kopiere filer fra en mappe til en anden, den nemmeste syntaks til brug af den er som følger:

# cp [options….] source(s) destination

Alternativt kan du også bruge de store filer/mapper i Linux.

Overvej kommandoerne nedenfor, normalt vil du skrive to forskellige kommandoer for at kopiere den samme fil i 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

Forudsat at du vil kopiere en bestemt fil til op til fem eller flere mapper, betyder det, at du bliver nødt til at skrive fem eller flere cp-kommandoer?

For at fjerne dette problem kan du anvende ekkokommandoen, en pipe, xargs-kommando sammen med cp-kommandoen i nedenstående form:

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

I formen ovenfor gentages stierne til telefonbøgerne (dir1, dir2, dir3 ... ..dirN) som input til kommandoen xargs, hvor:

  1. -n 1 - fortæller xargs at bruge højst et argument pr. kommandolinje og sende til cp-kommandoen.
  2. cp - bruges til at kopiere en fil.
  3. -v - gør det muligt for detaljeret tilstand at vise detaljer om kopieringen.

Prøv at læse gennem man-siderne i cp , echo og xargs kommandoer for at finde nyttige og avancerede brugsoplysninger:

$ man cp
$ man echo
$ man xargs

Det er alt, du kan sende os spørgsmål i forhold til emnet eller enhver feedback via kommentarformularen nedenfor. Det kan også være en god idé at læse om tjære osv.) -Kommandoer, der i øjeblikket kører i Linux.