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

BASH - ZADANIA NA STUDIA

VPS Starter Arubacloud
0 głosów
1,771 wizyt
pytanie zadane 13 października 2017 w Inne języki przez Adiiks Nowicjusz (120 p.)

Witam, jestem na pierwszym roku studiów informatycznych, na zajęciach z systemów operacyjnych mam posługiwanie się w terminalu Linuxa i pisanie skryptów w bashu. Mam do zrobienia dwa zadania:

zadanie 1:

Korzystając z potoków utwórz polecenie, które dla każdej powłoki systemowej wyświetli liczbę użytkowników, dla których dana powłoka jest domyślną (odp. informacje można znaleźć w pliku /etc/passwd).

Lista powinna być posortowana nierosnąco.

Zapisz to polecenie w pliku defshells.sh.

Przykładowe wyjście:

     13 /bin/bash
      6 /sbin/nologin
      1 /usr/sbin/nologin

Zadanie 3 (2p)

Zaimplementuj skrypt freq.sh, który dla tekstu przekazanego na wejściu zwróci na wyjściu listę frekwencyjną, tj. dla każdego słowa w tekście wypisze liczbę jego wystąpień.

Wyjście powinno składać się z par postaci

slowo 234
nastepneslowo 211
kolejneslowo 201

Słowa powinny zostać posortowane w kolejności od największej do najmniejszej liczby wystąpień.

Przetestuj działanie skryptu na plwiki.txt.gz.

Na potrzeby tego zadania należy przyjąć, że słowem jest dowolny ciąg znaków złożony z liter.

Będę wdzięczny za jakiekolwiek pomysły czy wskazówki jak rozwiązać te zadania.

 

1 odpowiedź

+1 głos
odpowiedź 13 października 2017 przez niezalogowany

Wskazówki, dla zadania (użyj):

  1. grep po /etc/passwd oraz wc -l do zliczania
  2. -
  3. sort oraz  uniq 
komentarz 13 października 2017 przez Adiiks Nowicjusz (120 p.)
Co do zadania pierwszego wpisuje do konsoli:

cat /etc/passwd | grep bin/bash | wc -l

Już wczesniej znalazłem to rozwiązanie ale po wpisaniu tego wyskakuje mi pod spodem np. liczba 4 a w przykładzie jest ilosc i nazwa tego czyli np. 4 /bash/bin i nie wiem jak to dopisać żeby pojawiala sie cyfra a potem nazwa. Próbowałem dodać do tego potoku polecenie echo ale nie dostaje pożądanego efektu.

Co do zadania 3 użyłem póki co w terminalu polecenia:

zcat plwiki.txt.gz | sort  | uniq -c | sort -n

Plik jest faktycznie sortowany ale do połowy czyli najpierw sortuje mi linijki tekstu z wieloma wyrazami, a pod spodem wypisuje kilka słow tak jak powinno być a ja potrzebuje każde słowo osobno zliczone w osobnej linijce  oraz jak zrobić zeby sortowało sie od najwiekszej do najmniejszej a nie odwrotnie. Próbowałem z różnymi parametrami ale nie wychodzi mi to.

Podobne pytania

0 głosów
1 odpowiedź 380 wizyt
0 głosów
1 odpowiedź 187 wizyt
pytanie zadane 2 listopada 2018 w Visual Basic przez KonDZIKs Bywalec (2,770 p.)
0 głosów
2 odpowiedzi 362 wizyt
pytanie zadane 16 października 2018 w C i C++ przez periedynek Obywatel (1,320 p.)

92,454 zapytań

141,262 odpowiedzi

319,089 komentarzy

61,854 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.

Akademia Sekuraka

Akademia Sekuraka 2024 zapewnia dostęp do minimum 15 szkoleń online z bezpieczeństwa IT oraz dostęp także do materiałów z edycji Sekurak Academy z roku 2023!

Przy zakupie możecie skorzystać z kodu: pasja-akademia - użyjcie go w koszyku, a uzyskacie rabat -30% na bilety w wersji "Standard"! Więcej informacji na temat akademii 2024 znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...