Wpis użytkownika Fausto w Ciekawostki
FaustoAutorytet
13piorunówCiekawoska 👽
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_ nazwapliku **-delete_** to usuniesz konkretny plik.
A jeżeli zrobisz tak: _find -delete -name_ nazwa_pliku to usuniesz wszystkie pliki z katalogu :smiling_imp:
#informatyka #linux
Źródło:
https://qr.ae/p2PS6s
Komentarze (6)
@Fausto Find jest generalnie skopanym poleceniem, ale jest tak stare, że nic się z tym nie da zrobić. Poza używaniem fd-find.
>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.
>Most harmful command
A co uważasz o
>alias cd=ls
@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
@entropy_ śmieszkowy alias się robi świadomie, a przy wykonywaniu pracy na plikach z find można się jednak pomylić