• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Linux ,konsola

–1 głos
546 wizyt
pytanie zadane 11 lutego 2017 w Systemy operacyjne, programy przez Kamil Maksymowicz Początkujący (400 p.)
Witam. Mam takie zadanie z poziomu katalogu domowego wyszukać w katalogu aa wszystkie niepuste pliki z nazwą rozpoczynającą sie na b,modyfikowane nie dawniej niż 4 dni temu. Przekierować wynik tego polecenia do pliku linia.txt w katalogu bb .

find  ~/aa -name ^b -mtime +4 >> /bb/linia.txt

Czy do tego służy polecenie grep czy find (nie jestem pewny) ,  a jak wyszukać niepuste ii czemu mi to nie chcę zadziałać.Bardzo proszę o pomoc

2 odpowiedzi

+2 głosów
odpowiedź 11 lutego 2017 przez Benek Szeryf (94,030 p.)

(...) czemu mi to nie chcę zadziałać.

Nie działa, bo używasz złych parametrów.

find ~/aa/ -maxdepth 1 -type f ! -empty -name "b*" -mtime -4 >> ~/bb/linia.txt

Po kolei:

  • przeszukaj katalog aa, znajdujący się w katalogu domowym użytkownika
  • poszukiwania ogranicz tylko do jednego poziomu, czyli nie przeszukuj np. katalogu ~/aa/katalog_podrzedny/
  • wyszukiwanie ogranicz tylko do plików
  • wyszukanie ogranicz do niepustych plików. Wykrzyknik to negacja
  • wyszukiwanie ogranicz do plików, których nazwa rozpoczyna się od znaku b (pominięte zostaną pliki z nazwą rozpoczynającą się od znaku B)
  • wyszukiwanie ogranicz do plików modyfikowanych nie dawniej niż 4 dni temu (plus oznacza dawniej niż 4 dni temu)
  • wyszukiwanie przekieruj do pliku ~/bb/linia.txt. Jeśli plik istnieje, to zostanie do niego dopisany output polecenia find, w przeciwnym razie plik zostanie stworzony (zakładając, że istnieje katalog bb)

Czy do tego służy polecenie grep czy find (...)

Najprostsze jest to, co podałem. grep-em też się da to zrobić z użyciem potoków, ale to bardziej skomplikowane. Lepiej wykorzystać narzędzie dedykowane, czyli find. W ogólności polecenie grep służy do wyszukiwania wzorców w plikach tekstowych.

0 głosów
odpowiedź 11 lutego 2017 przez hoktaur Pasjonat (22,250 p.)
z man'a

List all files beginning with 'memo' and owned by Maude (AND)
$ find . -name 'memo*' -user Maude

Find files have been modified within the last day:
$ find ~/Movies -mtime -1

Find files that are over 1 GB but less than 20 GB in size:
$ find ~/Movies -size +1024M -size -20480M -print0

albo

! -size 0

Podobne pytania

0 głosów
1 odpowiedź 360 wizyt
pytanie zadane 25 stycznia 2017 w Sieci komputerowe, internet przez Kamil Maksymowicz Początkujący (400 p.)
+1 głos
1 odpowiedź 647 wizyt
pytanie zadane 1 maja 2015 w C i C++ przez Pan Kulomb Pasjonat (18,630 p.)
0 głosów
2 odpowiedzi 1,850 wizyt
pytanie zadane 10 lutego 2018 w Systemy operacyjne, programy przez Paulina Sprawka Nowicjusz (120 p.)

93,753 zapytań

142,713 odpowiedzi

323,356 komentarzy

63,347 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Twierdza Linux. Bezpieczeństwo dla dociekliwych

Aby uzyskać rabat -10%, użyjcie kodu pasja-linux, wpisując go w specjalne pole w koszyku.

...