🐚 Zadania bash — SOP (przykłady kolokwialne)

Systemy operacyjne · skrypty powłoki · rozwiązania sprawdzone w terminalu
Uwaga (z treści kolokwium): wyżej oceniane są rozwiązania z użyciem struktur for, if, while itd. niż pojedyncze polecenie, które być może rozwiązuje problem. Poniższe rozwiązania celowo używają pętli i instrukcji warunkowych.
KOLOKWIUM 1
Kolokwium 1 · Zadanie 14 p
Napisz skrypt (lub polecenie), który wypisze nazwy tych plików z katalogu bieżącego, których treść nie zawiera na początku linii tekstu /*main*/. Mają być wypisane wyłącznie nazwy.
Kolokwium 1 · Zadanie 26 p
Napisz skrypt, który zapisze do pliku P te spośród swoich argumentów, które są katalogami zawierającymi co najwyżej 11 pozycji (dowolnych plików lub katalogów, również ukrytych). Nazwa pliku P podana z klawiatury. W P zapisujemy nazwę katalogu i ilość pozycji.
Kolokwium 1 · Zadanie 3 — wersja 213 p
Skrypt pobiera trzy argumenty PLIKWEJSCIOWY, PLIKWYJSCIOWY1, PLIKWYJSCIOWY2 i przepisuje wszystkie liczby do PLIKWYJSCIOWY1, a ciągi różne od liczb do PLIKWYJSCIOWY2 (zachowując układ linii). Wersja 2: dopuszczamy elementy wieloznakowe.
Kolokwium 1 · Zadanie 3 — wersja 113 p
Jak wyżej, ale jeżeli pojawi się jakikolwiek ciąg dłuższy niż 1 znak, skrypt ma się zakończyć, a pliki wyjściowe powinny zostać skasowane. (Plik wejściowy powinien zawierać pojedyncze znaki oddzielone spacją.)
KOLOKWIUM 2
Kolokwium 2 · Zadanie 1
Napisz skrypt, który wypisze nazwy tych katalogów z katalogu bieżącego, które zawierają co najmniej jeden plik do odczytu.
Kolokwium 2 · Zadanie 2
Napisz skrypt, który wypisze te spośród swoich argumentów, które są plikami zawierającymi co najmniej 2 wystąpienia słowa CPU. Z przodu słowa musi być spacja, a z tyłu spacja, kropka lub przecinek.
Kolokwium 2 · Zadanie 3
Skrypt pobiera nazwę pliku jako pierwszy argument i wyznacza ilość wszystkich cyfr i liter w pliku oraz sumę wszystkich liczb. Plik może mieć zmienną liczbę linii i elementów; nie ma tokenów mieszających cyfry z literami.
Każde rozwiązanie zostało uruchomione na danych z treści zadania i dało oczekiwany wynik.
⬇ Pobierz paczkę skryptów (skrypty_bash.zip)