Znajdź wszystkie pliki pasujące do opisu i utwórz twarde łącze w katalogu

2

Chciałbym znaleźć wszystko .mkv pliki w moim katalogu pobierania i utwórz do nich dowiązanie twarde /movies/ informator.

Oto, co mam do tej pory:

for i in `find /download/ -name *.mkv`; do ln "$i" /movies/; done

Który prawie działa: Otrzymuję kilka twardych linków do częściowych nazw plików. To znaczy zamiast twardego linka do powiedzenia The Best Movie Ever.mkv Otrzymuję cztery twarde linki, jeden do The jeden do Best jeden do Movie i jeden do Ever.mkv

Jakieś sugestie?

curios
źródło
Spójrz na tę odpowiedź. Chodzi o zmianę nazw plików o błędnych nazwach, ale o rdzeń find logika powinna działać dla Ciebie. superuser.com/a/847795/167207
JakeGould

Odpowiedzi:

2

Spróbuj tego:

find /download/ -name *.mkv -exec ln {} /movies/ \;
jherran
źródło
Słodkie. To działa. W pewnym momencie byłem tak blisko, miałem tę odpowiedź z wyjątkiem ostatniego „Dzięki
curios
Strona ludzka mówi, że musisz uciec przed „;” więc bash tego nie interpretuje
curios