Jak skopiować plik do wielu katalogów w linuksie za pomocą jednego polecenia

Linux

Kopiowanie pliku jest absolutnie bardzo łatwym zadaniem do wykonania w każdym nowoczesnym systemie operacyjnym, włączając w to Linuksa. Tak jak Windows i Mac, możesz łatwo skopiować plik z GUI klikając prawym przyciskiem myszy na plik i wybierając opcję kopiuj.

Jednakże, co jeśli chcesz skopiować plik do wielu katalogów za pomocą jednego polecenia. Możesz to zrobić tylko używając wiersza poleceń.

Normalnie, użylibyśmy polecenia cp do skopiowania pliku w Linuksie. Ale, to polecenie może być użyte tylko do skopiowania pliku do określonego katalogu. Jeśli myślisz o skopiowaniu pliku do więcej niż jednego miejsca docelowego, musisz poszukać innej alternatywy.

Na szczęście Linux jest wyposażony w tak wiele poleceń. Kiedy zagłębimy się w komendę, możemy zrobić wiele rzeczy używając jej. W tym przypadku, będziemy mówić o „echo”.

Ta komenda jest w zasadzie używana do pisania na ekranie. Ale, możemy również użyć tej komendy do skopiowania pliku z dodatkowymi opcjami. Przed wykonaniem polecenia, lepiej jest zrozumieć jak ono działa.

Poniżej znajduje się składnia polecenia, którego będziemy używać.

echo dir_1 dir_2 dir_3 | xargs -n 1 cp file1

W tym przypadku, chcemy podać wyjście polecenia echo jako wejście do polecenia xargs. Aby to zrobić, używamy symbolu pipe ( | ), który podaje wyjście z jednego polecenia jako wejście do drugiego. Polecenie xargs wykona polecenie cp trzy razy, za każdym razem dołączając do końca polecenia cp kolejną ścieżkę do katalogu przesłaną mu przez polecenie echo. Do xargs przekazywane są trzy argumenty, ale opcja -n 1 w poleceniu xargs mówi, że za każdym razem do polecenia cp dołączany jest tylko jeden z tych argumentów.

Zrozumiałeś?

Poniżej znajduje się przykład polecenia.

echo dir_1 dir_2 dir_3 | xargs -n 1 cp copythisfile.txt

YouTube video: Jak skopiować plik do wielu katalogów w Linuksie za pomocą jednego polecenia


.

Rate article