Do tego czasu wiele plików jest nadal w moim systemie i już ich nie potrzebuję, więc jak usunąć wszystkie pliki, które mają co najmniej jeden rok?
command-line
Maythux
źródło
źródło
{}
w-exec
(tak czyta-exec rm "{}" \;
). To gwarantuje, że spacje są obsługiwane poprawnie ... I możesz po prostu użyć-delete
funkcji zamiast-exec
."{}"
się{}
przed przekazaniem jejfind
; następniefind
zastępuje ją. Cytowanie{}
jest sugerowane w przypadku,{
a}
oni sami mogą czasem być traktowani specjalnie przez powłokę - która nie ma nic do zrobić z pustymi spacjami. I często{}
nie trzeba tego cytować. Nie mogę wymyślić żadnej sytuacji, przynajmniej przywołując find z powłoki w stylu Bourne'a, gdy{}
nic w środku nie wyglądałoby na kłótnię trzeba zacytować. Czy możesz?)find
uchwyty uciekają dla siebie, ale nie jest to zły nawyk podczas pisania skryptów. To nie bolifind
nie poradzi sobie z ucieczką,"{}"
nadal będzie miał taki sam efekt, jak - po{}
prostu nie zadziała, zamiast obu. To{}
i"{}"
zachowuj się tak samo nie jest - i nie może być - ze względu na jakąś specjalną cechę znalezienia. Mylenie tego, co jest rozszerzane przez powłokę z tym, co jest rozszerzane przez inny program, jest złym nawykiem. Wszyscy popełniamy ten błąd od czasu do czasu, ale nadal jest to błąd - nie jest to najlepsza praktyka. (Można jeszcze zacytować,{}
aby pomóc ludziom zrozumieć, że nie jest to wzorzec rozwijania nawiasów klamrowych, ale nie ma to związku z dzieleniem słów.)