Dlaczego „find -print0” nie działa w Cygwin pod Vistą?


2

Piszę prosty skrypt powłoki:

znajdź pliki danych / -type f -print0 | xargs -0 md5sum> datafiles.md5

W Cygwin pod Vistą po prostu tam siedzi i nic się nie dzieje. Działa dobrze w systemie Linux.

Co może być problemem?

fyi:

$ find --version
find (GNU findutils) 4.4.0
Prawa autorskie (C) 2007 Free Software Foundation, Inc.
Licencja GPLv3 +: GNU GPL wersja 3 lub nowsza 
To jest wolne oprogramowanie: możesz je zmieniać i rozpowszechniać.
Nie ma ŻADNEJ GWARANCJI, w zakresie dozwolonym przez prawo.

Napisane przez Erica B. Deckera, Jamesa Youngmana i Kevina Dalleya.
Zbudowany przy użyciu GNU gnulib w wersji e5573b1bad88bfabcda181b9e0125fb0c52b7d3b
Funkcje włączone: O_NOFOLLOW (włączone) LEAF_OPTIMISATION FTS () CBO (poziom = 0)

Znalazłem powiązany post
Alex R

Jeśli chodzi o to, co jest warte, działa dobrze pod cygwin / XP.

Używam go cały czas pod Cygwin / Vista i działa dla mnie dobrze.

Właśnie odkryłem, że działa dobrze z lokalnymi systemami plików. To nie działa tylko w sieci!
Alex R

Odpowiedzi:


0

Rozłącz rozkaz. Co robi

find datafiles/ -type f -print0

dać ci Co robi

find datafiles/ -type f

dać ci Co robi

find datafiles/

dać ci Co robi

ls -ld datafiles/

dać ci


Wydaje się, że polecenie „znajdź” oznacza, że ​​wszystko jest folderem (typ f nie działa). Problem dotyczy tylko plików na konkretnym montażu sieciowym, z którym próbowałem pracować. W końcu poddałem się i przyjąłem inne podejście.
Alex R
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.