Ciekawoska

Wiele poleceń linuxowych pozwala ignorować kolejność opcji.
np. ls -l -a = ls -a -la

ale okazuje się, że w find tak nie jest.
i jeżeli zrobisz tak: find -name nazwa_pliku -delete to usuniesz konkretny plik.
A jeżeli zrobisz tak: find -delete -name nazwa_pliku to usuniesz wszystkie pliki z katalogu
#informatyka #linux

Źródło:
https://qr.ae/p2PS6s
Fausto userbar
entropy_

Most harmful command

A co uważasz o

alias cd=ls

Fausto

@entropy_ śmieszkowy alias się robi świadomie, a przy wykonywaniu pracy na plikach z find można się jednak pomylić

entropy_

@Fausto niekoniecznie świadomie

Ty myślisz że dlaczego admini hejto się nie odzywają odkąd owca został modem?

Owca zresetował im hasła do kont, wpisał to w konsolę i pasie się od tamtej pory sam

wonsz

find --help

Składnia: find [-H] [-L] [-P] [-Opoziom] [-D opcje_diagnostyczne] [ścieżka...] [wyrażenie]


Domyślna ścieżka to aktualny katalog; domyślne wyrażenie to -print.

Wyrażenie może składać się z: operatorów, opcji, testów i akcji.


Operatory (malejący priorytet; jeśli nie ma żadnego, przyjmuje się -and):

to zadziała w taki sam sposób również dla akcji `-print` i porównywanie do kolejności opcji przy wywołaniu ls jest trochę chybione bo tutaj buduje się wyrażenie a nie przekazuje opcje. zgodnie z tym co na końcu cytatu `find -print -name cośtam` to jest `find <wyrażenie>` gdzie <wyrażenie> == `-print -and -name cośtam` i żeby móc powiedzieć jaki jest wynik `-and` trzeba "wyliczyć" obie składowe, zaczynając od lewej strony.


nie pamiętam żebym kiedykolwiek spotkał pełnowyrazowe opcje wywołania poprzedzone pojedynczym myślnikiem poza właśnie findem, więc to od razu daje do myślenia.

Fausto

@wonsz tak jak napisał w tym artykule, tu chodzi raczej o przyzwyczajenie z innych poleceń, przez co możesz się pomylić wykonując jakieś proste działania na plikach. Jednym się zapali lampka, a inni z automatu napiszą opcję przed nazwą pliku

ataxbras

@Fausto Find jest generalnie skopanym poleceniem, ale jest tak stare, że nic się z tym nie da zrobić. Poza używaniem fd-find.

Zaloguj się aby komentować