Wpis z mikrobloga

#linuxboners #linux

Mireczki, dopiero zaczynam swoją przygodę z linuxem i mam pewien kłopot.

Mam kilka tysięcy katalogów, chciałbym z nich wszystkich wybrać pliki kończące się na '.jpg' i skopiować do wybranego folderu.

potrafię znaleźć te wszystkie pliki o ktore mi chodzi uzywajac " find ~ -size 6M -size +500k -iname *.jpg" lecz nie potrafię połączyć tego z "cp".

Dodam, że nie zależy mi na zachowaniu struktury podkatalogów, chce tylko zeby owe pliki *.jpg znalazly sie w nowym katalogu

POMOCY !
  • 31
@franekfm: Nie spodziewałam się że są tam spacje, ja nigdy nie uzywam spacji w nazwach plikow. zawsze mozna zrobic rename na plikach zawierajacych spacje (co polecam w takim przypadku).
@KostekZgubina: I co probowales moich rad i nadal nie dziala?

find ~ -size 6M -size +500k -iname '.jpg' -exec cp {} NAZWAKATALOGU \;


ewentualnie:


find ~ -size 6M -size +500k -iname '.jpg' | xargs -I aaa -n 1 cp aaa NAZWAKATALOGU
@LaCroix: Ty nie używasz ale nie możesz pisać skryptów (a już na pewno nie dla innych) pod swoje przyzwyczajenia, zwłaszcza, że nie trzeba pisać pętli bo find sam ma swoją opcję do wykonywania dodatkowych komend i to jest właściwa ścieżka zgodnie ze sztuką.
@franekfm: przecież to nie mój skrypt, ktoś tam na górze napisał to poprawiłam. a do find dodałam -exec albo xargs wyżej, chyba tego nie przeczytałeś mądralo.

ja bym od razu zrobiła:

find ~ -size 6M -size +500k -iname '.jpg' -exec cp {} NAZWA_KATALOGU \;