Witam, mam taki problem z poleceniem find w bashu.
Niektórych plików find"nieakceptuje" pojawia się komunikat:
find: jakisplik.php: unknown option
Inne pliki obsługuje ale tylko te które mają @. Nie ważne czy z sudo czy bez jest ten sam problem
Polenie find w konsoli i unknown option
Rozpoczęty przez
macsurf
, 27 gru 2013 22:40
4 odpowiedzi w tym temacie
#1
Napisano 27 grudnia 2013 - 22:40
#2
Napisano 28 grudnia 2013 - 15:04
Pokaż w jaki sposób używasz find, bo z kuli nikt tu wróżyć zamiaru nie ma
#3
Napisano 28 grudnia 2013 - 16:15
Polecenie wyglada tak:
find ./ -type f -iname *.php
nawet w takiej formie nie łapie niektórych plików, wcześnie było z opcją -exec ale ona nie miała na to wpływu.
O dziwo teraz nawet @ nie wpływa na to który plik wywala find`a.
#4
Napisano 28 grudnia 2013 - 22:29
Tak zadziała:
find ./ -type f -iname "*.php"
man find Twoim przyjacielem ;-)
find ./ -type f -iname "*.php"
man find Twoim przyjacielem ;-)
#5
Napisano 29 grudnia 2013 - 20:32
Wielkie dzięki Maestro
Przy okazji problem z sedem rozwiązany jak dawalo się zakazane znaki typu "(" to cały find się wykrzaczał, tam apostrofy nie wystarczyły -musiały być cudzysłowy na wyrażenie.
Tak więc cały find do przeszukiwania plików i zamiany w nich znalezionego ciagu -> "szukany_ciag" na "zastap_go" wygląda tak:
find ./user -type f -iname "*.html" -exec sh -c 'sed "s|szukany_ciag|zastap_go|g" {} > {}.bak' \;
Może komuś się przyda, pliki nie są nadpisywane tylko tworzone nowe z końcówka ".bak" tak na wszelki wypadek Dobre jak mamy jakieś zainfekowane pliki php i chcemy je oczyścić z "syfu"
Użytkownicy przeglądający ten temat: 1
0 użytkowników, 1 gości, 0 anonimowych