Uobičajeno, za kopiranje jedne datoteke koristit ćete
cp
naredba, povezivanje s izvornom datotekom i odredišnim direktorijem:
cp ~/Documents/FileToBeCopied.txt ~/TextFiles/
Da biste je kopirali u još dva direktorija, mnogi ljudi bi samo pokrenuli naredbu još dva puta, s različitim odredištima:
cp ~/Documents/FileToBeCopied.txt ~/Dropbox/
cp ~/Documents/FileToBeCopied.txt /media/lori/MYUSBDRIVE/
echo dir1 dir2 dir3 | xargs -n 1 cp file1
Ovdje funkcionira ova naredba.
echo
naredba normalno piše na zaslonu. Međutim, u ovom slučaju želimo hraniti izlazne datoteke
echo
naredba kao unos u
xargs
naredba. Da biste to učinili, koristimo simbol cijevi (
|
) koji hrani izlaz iz jedne naredbe kao ulaza u drugi.
xargs
naredba će pokrenuti
cp
naredbu tri puta, pri svakom dodavanju sljedeće putanje direktorija koji je na njega povezan
echo
zapovijed do kraja
cp
naredba. Postoje tri argumenta
xargs
ali
-n 1
opcija na
xargs
naredba kaže da samo jedan od tih argumenata istodobno doda
cp
naredbu svaki put kad se pokrene.
Dakle, da se pridržavamo našeg primjera iz ranijih, ta tri odvojena
cp
gore navedene naredbe mogu se kombinirati u jednu naredbu poput ove:
echo ~/TextFiles/ ~/Dropbox /media/lori/MYUSBDRIVE | xargs -n 1 cp ~/Documents/FileToBeCopied.txt
cp
naredbu za kopiranje datoteke na jednu lokaciju, možete dodati
-i
da biste pitali želite li zamijeniti postojeću datoteku. Međutim
-i
opcija je interaktivna opcija (to uzrokuje
cp
naredba tražiti ulaz od korisnika) i ne možete koristiti interaktivnu opciju s
cp
naredba kada ga koristite u sprezi s
xargs
.)
Još jedna stvar koju treba razmotriti jest da, ako kopirate vrlo veliku datoteku, možda želite dodati ne-clobber (
-n
) opciju za
cp
naredba u jednoj naredbi iznad. Ova opcija automatski sprječava prebrisanje datoteke u odredištu ako već postoji. Ako kopirate vrlo veliku datoteku putem mreže, možda ćete biti spor i možda ćete izbjegavati upotrebu resursa potrebnih za kopiranje i zamjenu datoteke. Sljedeća naredba dodaje
-n
i neće kopirati datoteku na bilo koje odredište navedeno u argumentima iz izjave ehe, ako datoteka već postoji u tom odredištu.
echo ~/TextFiles/ ~/Dropbox /media/lori/MYUSBDRIVE | xargs -n 1 cp -n ~/Documents/FileToBeCopied.txt