[solved]kopiowanie jednego typu plików do jednego folderu

Grafika, film, dźwięk.
klawiszowy
Sędziwy Jeż
Sędziwy Jeż
Posty: 44
Rejestracja: 21 cze 2008, 13:53
Płeć: Mężczyzna
Wersja Ubuntu: 10.10
Środowisko graficzne: GNOME
Architektura: x86
Kontakt:

[solved]kopiowanie jednego typu plików do jednego folderu

Post autor: klawiszowy »

To jeszcze raz ja.
Czy istnieje komenda która masowo skopiowałaby wszystkie pliki jednego rodzaju w moim wypadku mp3 z całego dysku do jednego folderu??
pozdrawiam
[ciach]
Awatar użytkownika
el.pescado
Zakręcona Traszka
Zakręcona Traszka
Posty: 734
Rejestracja: 26 maja 2005, 11:43
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: GNOME
Architektura: x86
Kontakt:

Odp: kopiowanie jednego typu plików do jednego folderu

Post autor: el.pescado »

Kod: Zaznacz cały

find nazwa_katalogu -name '*.mp3' -exec cp {} docelowy_katalog \;
gdzie nazwa_katalogu to katalog, w którym należy rozpocząć poszukiwania, docelowy_katalog to wiadomo co.
klawiszowy
Sędziwy Jeż
Sędziwy Jeż
Posty: 44
Rejestracja: 21 cze 2008, 13:53
Płeć: Mężczyzna
Wersja Ubuntu: 10.10
Środowisko graficzne: GNOME
Architektura: x86
Kontakt:

Odp: kopiowanie jednego typu plików do jednego folderu

Post autor: klawiszowy »

dzięki wielkie działa jak Bozia każe... a czy w ramach edukacji żółtodzioba, ale ambitnego wytłumaczysz jeszcze elementy składni?? tak bardziej akademicko, a nie tylko żeby działało?? jak nie masz czasu nie obrażę się...
pozdrawiam
i z góry dzięki żeby nie było nabijania postów...
[ciach]
Awatar użytkownika
thalcave
Przyjaciel
Przyjaciel
Posty: 821
Rejestracja: 08 lis 2006, 12:17
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: Fluxbox
Architektura: x86

Odp: [solved]kopiowanie jednego typu plików do jednego folderu

Post autor: thalcave »

Skoro ambitny to

Kod: Zaznacz cały

man find
GNU/Linux user
Na pytania na PW/e-mail nie udzielam odpowiedzi!
Szanujmy innych użytkowników!
Wesprzyj akcje: Temat rozwiązany -> dodajemy [solved]
Awatar użytkownika
el.pescado
Zakręcona Traszka
Zakręcona Traszka
Posty: 734
Rejestracja: 26 maja 2005, 11:43
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: GNOME
Architektura: x86
Kontakt:

Odp: [solved]kopiowanie jednego typu plików do jednego folderu

Post autor: el.pescado »

Proszę bardzo:
find to program do wyszukiwania plików
nazwa_katalogu pierwszy argument find określa katalog, w którym należy zacząć poszukiwania
-name '*.mp3' opisuje kryterium poszukiwania plików, w tym wypadku jest to nazwa pasująca do wzorca *.mp3. Wzorzec trzeba ująć w apostrofy, żeby shell go nie rozwinął. Są też inne kryteria, np -newer (jeśli chcemy poszukiwać plików nowszych niż jakiś plik), czy -size (jeśli chcemy poszukiwać plików o odpowiedniej wielkości).
-exec określa, co chcemy zrobić z wynikami wyszukiwania - ta konkretna flaga oznacza, że chcemy wykonać jakiś inny program na wynikach wyszukiwania. Z inncyh opcji można podać po prostu -print, które wypisuje wyniki wyszukiwania na ekranie.
cp {} docelowy_katalog \; - to jest polecenie, argument flagi -exec, czyli polecenie wykonywane dla każdego znalezionego pliku.
cp kopiuje pliki
{} pierwszy argument cp, określa plik, który należy skopiować, symbol {} jest podmieniany przez find na nazwę znalezionego pliku
docelowy katalog drugi argument cp, określa docelowe położenie pliku
\; średnik mówi progrmaowi find, że w tym miejscu się kończy polecenie dla flagi -exec. Ponieważ średnik jest interpretowany przez powłokę bash, podany sam, nie byłby przekazany do find, więc trzeba go zabezpieczyć ukośnikiem (\).

A więcej informacji, tak jak napisał kolega wyżej, znajdziesz w manualu.
ODPOWIEDZ

Wróć do „Muzyka, filmy, zdjęcia, grafika”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 27 gości