Elegancki sposób wyszukiwania plików UTF-8 za pomocą BOM?

Do celów debugowania muszę rekursywnie przeszukiwać katalog w poszukiwaniu wszystkich plików, które zaczynają się od znaku kolejności bajtów UTF-8 (BOM). Moje obecne rozwiązanie to prosty skrypt powłoki:

find -type f |
while read file
do
    if [ "`head -c 3 -- "$file"`" == 

Lub, jeśli wolisz krótkie, nieczytelne jednowierszowe:

find -type f|while read file;do [ "`head -c3 -- "$file"`" == 

Nie działa z nazwami plików, które zawierają podział wiersza, ale i tak nie należy oczekiwać takich plików.

Czy jest jakieś krótsze lub bardziej eleganckie rozwiązanie?

Czy są jakieś interesujące edytory tekstu lub makra dla edytorów tekstu?

\xef\xbb\xbf' ] then echo "found BOM in: $file" fi done

Lub, jeśli wolisz krótkie, nieczytelne jednowierszowe:

find -type f|while read file;do [ "`head -c3 -- "$file"`" == $'\xef\xbb\xbf' ] && echo "found BOM in: $file";done

Nie działa z nazwami plików, które zawierają podział wiersza, ale i tak nie należy oczekiwać takich plików.

Czy jest jakieś krótsze lub bardziej eleganckie rozwiązanie?

Czy są jakieś interesujące edytory tekstu lub makra dla edytorów tekstu?

\xef\xbb\xbf' ] && echo "found BOM in: $file";done

Nie działa z nazwami plików, które zawierają podział wiersza, ale i tak nie należy oczekiwać takich plików.

Czy jest jakieś krótsze lub bardziej eleganckie rozwiązanie?

Czy są jakieś interesujące edytory tekstu lub makra dla edytorów tekstu?

\xef\xbb\xbf' ] then echo "found BOM in: $file" fi done

Lub, jeśli wolisz krótkie, nieczytelne jednowierszowe:

find -type f|while read file;do [ "`head -c3 -- "$file"`" == $'\xef\xbb\xbf' ] && echo "found BOM in: $file";done

Nie działa z nazwami plików, które zawierają podział wiersza, ale i tak nie należy oczekiwać takich plików.

Czy jest jakieś krótsze lub bardziej eleganckie rozwiązanie?

Czy są jakieś interesujące edytory tekstu lub makra dla edytorów tekstu?

questionAnswers(11)

yourAnswerToTheQuestion