Zajęcia 1

Teoria

pwd – Pokazuje aktualną ścieżkę położenia
mkdir – Tworzy katalogi
rmdir – Usuwa katalogi
ls – wyświetla zawartość katalogu
cd – wchodzi lub wychodzi z katalogu cd .. – wychodzi
cp – kopiuje pliki lub foldery
mv – zmienia nazwę/ przenosi plik lub katalog
cat – wyświetla zawartość pliku
head – wyświetla pierwsze 10 linii pliku
tail – wyświetla ostatnie 10 lini pliku
rm – usuwa pliki
nano – edytor tekstowy

nazwaprogramu –help    – wyświetla pomoć i dostępne parametry programu

Zadania

Zadanie 1

Utwórz strukturę katalogów (zwróć uwagę na wielkie i male litery

NazwiskoImie — twoje nazwisko i imie
—Zwierzeta
——Lesne
———Jungla
———Zwykly las (tutaj jest spacja)
——Polne
——Domowe
—rosliny
——wodne
———nadwodne
———podwodne
——ladowe

1. W katalogu NazwiskoImie/Zwierzeta/Domowe utwórz plik o nazwie psy.txt i wprowadź 20 imion psów

2. Wyświetl aktualna ścieżke katalogu w którym się znajdujesz

3. Wyświetl pierwsze 3 linijki pliku psy.txt

4. Wyświetl ostatnie 5 linijek pliku psy.txt

5. Zmień nazwy katalogów pisane wielkimi literami na małe litery

6. Przejdź do katalogu nazwiskoimie

7. Utwórz plik kotki.txt i wpisz 5 imion dla kotów

8. Wyświetl zawartość katalogu nazwiskoimie

9. Nie zmieniając katalogu wyświetl zawartość pliku psy.txt

10. Przenieś plik psy.txt to katalogu głównego (nazwiskoimie)

11. Usuń wszystkie utworzone katalogi i pliki

Zadanie 2

W katalogu nazwiskoimie utwórz folder Auta, w tym folderze utwórz w nim dwa foldery: “auta osobowe” i “auta ciezarowe”.

Do folderu auta osobowe dodaj plik “Marka samochodow osobowych.txt” a do folderu auta ciężarowe dodaj plik “Marki samochodow ciezarowych.txt” i wymien po 5 marek aut w każdym z nich.

Przekopiuj pliki do katalogu nazwiskoimie po czym skasuj katalogi.

Wyświetl pierwszą i ostatnia linijke dowolnego pliku.

Zajęcia 2

wget - pobiera pliki

wget http://damianslimak/ajd/dane.txt – jeśli plik istnieje to go pobierze do aktualnego folderu.

chmod - uprawnienia pliku

chmod [opcje] uprawnienia plik – służy do zmiany praw dostępu. Dostęp do plików, katalogów może być uzależniony o klasy, do której użytkownik należy.

Informacje o prawach można wyświetlić poleceniem
ls -l plik.txt

-rw-r—– 1 student student_team 351404 Jun 21 12:11 plik.txt

– pierwszy znak `-`oznacza, że jest to zwykły plik. Może być: `d` – katalog, `l` – link, `s` – gniazdo.
– kolejne 9 znaków, oznaczają prawa dostępu (r – odczyt (read), w – zapis (write) x – wykonanie (execute)) odpowiednio dla użytkownika, grupy i innych
– następna liczba określa liczbę linków do pliku
– następnie jest nazwa użytkownika i grupy
– dalej jest rozmiar pliku oraz data i czas ostatniej modyfikacji pliku
– na końcu jest nazwa pliku.

Opis klas użytkowników
• u– użytkownik (ang. user)
• g– grupa (ang. group)
• o – inni (ang. others)
• a – wszyscy (ang. all)

Natomiast prawa dostępu mogą oznaczać prawo do:
r – odczytu,
w – zapisu,
x – wykonania (dotyczy plików, które można uruchomić, tzn. programów, skryptów)

Nadawanie praw można wykonać na kilka sposobów. Jednym z nich jest podanie w opcjach polecenia klasy użytkownika (ugoa), znaku +/- (nadanie/usunięcia prawa) oraz typu uprawnień (r, w, x). Użycie znaku = umożliwia przypisanie podanych uprawnień.
W jednym poleceniu można nadać kilka praw dla kilku typów użytkowników

Przykłady

chmod g+w plik.txt — nadaje użytkownikom należącym do grupy uprawnienia do zmiany/zapisu ‘plik.txt’,
chmod a-x plik.txt— usuwa możliwość wykonywania ‘plik.txt’ przez wszystkich użytkowników,
chmod uo=rx plik.txt — użytkownik oraz pozostali użytkownicy będą mogli wyłącznie czytać i wykonywać ‘plik.txt’

find – wyszukiwanie danych

find Umożliwia wyszukiwanie plików i katalogów.

Domyślnie wyszykuje wszystko (jak dla „*”) w bieżącym katalogu.
Domyślnie wypisuje wyniki wyszukiwania w konsoli. find – wypisuje zawartość katalogów i podkatalogów (wyszukuje „wszystko”).
find Rok – wypisuje wszystkie elementy (pliki, katalogi) znalezione w katalogu Rok. Jeżeli katalog Rok nie znajduje się w bieżącym katalogu, to pojawi się komunikat.

find /home -name “Rok” – wyszukuje elementy (pliki, katalogi) o nazwie (-name) Rok, począwszy od katalogu /home

UWAGA w wyszukiwanych można używać symboli specjalnych „*” i „?”

find /home -iname “*.TXT” wyszukuje plików zakończonych na “.txt”, przy czym nie jest brana pod uwagę wielkość liter (-iname),
przykładowy wynik:
plik.txt, plik.TxT, plik.txT

find /home -maxdepth 2 -iname “*.TXT’” wyszukuje plików przy ograniczaniu zagłębiania się w podkatalogi (parametr maxdepth 2), tu ograniczenie do dwóch podkatalogów, np.
/home/student/plik.txt

find /home ! -iname “*.txt” – wyszukuje wszystkie pliki oprócz tych z rozszerzeniem “txt” (wielkość liter nie ma znaczenia)

find /home -type d -iname Katalog – wyszukuje folder (-type d) o nazwie Katalog (wielkość liter nie ma znaczenia -iname)

find /home -type f -name plik.txt – wyszukuje plik (-type f) o nazwie plik.txt

find /home -type d -empty – wyszukuje wszystkie puste podkatalogi w katalogu w home

find / -mtime 10 – znajduje wszystkie pliki zmodyfikowane 10 dni temu

find / -mtime +10 -mtime -100 – znajduje wszystkie pliki zmodyfikowane więcej (+) niż 10 dni temu, ale mniej (-) niż 100 dni temu. Czas można wyrazić w minutach (-min) zamiast dniach

find / -size 10M – znajduje wszystkie pliki o rozmiarze 10MB

find / -size +10M -size – 50M – znajduje wszystkie pliki o rozmiarze od 10MB do 50MB – więcej niż 10MB i mniej niż 50MB

tar - archiwizacja plików

tar – program do archiwizowania grupy plików/katalogów w jednym zbiorczym pliku (tzw. archiwum), który następnie może zostać skompresowany programami kompresującymi: gzip, bzip2, xz, compress lub lzma. W wyniku otrzymuje się odpowiednio pliki .tar.gz (w skrócie .tgz), .tar.bz2, .tar.Z, i .tar.lzma.
Podstawowe opcje wiersza poleceń:

-c – tworzy plik w formacie tar
-f – określa nazwę pliku archiwum tar
-v – wypisuje nazwy wszystkich plików
-x – wyodrębnia wymienione pliki
-t – wyświetla zawartość archiwum
-r – włącza bezwarunkowe dołączanie plików do archiwum
-u – powoduje dołączenie do archiwum tylko tych plików, które są nowsze niż ich odpowiedniki w archiwum

-z – włącza kompresję programem tar.gzip
-j – włącza kompresję programem tar.bzip2
-J – włącza kompresję programem tar.xz

tar cvf archiwum.tar katalog – tworzy archiwum o nazwie ‘archiwum.tar.xz’ zawierające zawartość folderu ‘katalog ’, dodatkowo archiwum jest skompresowane programem xz

tar xvfJ archiwum.tar.xz – z pliku ‘archiwum.tar.xz’, po wcześniejszym „rozpakowaniu”, zostanie wypakowana cała zawartość archiwum, z wypisaniem nazw plików na konsoli.
tar xvf archiwum.tar – z pliku ‘archiwum.tar’ zostanie wypakowana cała zawartość archiwum, z wypisaniem nazw plików na konsoli.
tar xvf archiwum.tar -C Nowe\\\\\\\\\\\\\\\\ – z pliku ‘archiwum.tar’ zostanie wypakowana cała zawartość archiwum do podkatalogu Nowe, z wypisaniem nazw plików na konsoli.
tar rvf archiwum.tar plik1.txt – dodaje plik ‘plik1.txt’ do archiwum
tar tvf archiwum.tar – sprawdzenie zawartości archiwum

Przygotowanie
  1. Utwórz katalog nazwiskoimie
  2. Ściągnij pliki
    https://damianslimak.pl/ajd/matura.tar.xz
    https://damianslimak.pl/ajd/prepare.sh
  3. Nadaj uprawnienia plikowi prepare.sh do wykonywania
  4. Uruchom prepare.sh
Powtórka

Utwórz strukture katalogów

Auta

|–Osobowe

..|–Audi

..|–BMW

..|–Seat

|–Ciężarowe

 

W katalogu Audi utwórz plik modele.txt i wpisz 3 modela audi
Pousuwaj wszystkie katalogi i pliki

Zadanie 1

W katalogu domowym /home/student

  1. wszystkie pliki zaczynające się na literę”a”
  2. wszystkie pliki tekstowe – rozszerzenie „txt” gdzie wielkość znaków nie ma znaczenia
  3. wszystkie pliki zmodyfikowane 7 dni temu
  4. wszystkie pliki zmodyfikowane w zeszłym tygodniu
  5. wszystkie pliki tekstowe, przy ograniczeniu wyszukiwania do 2 poziomów w głąb
Zadanie 2

W katalogu szkoła wyszukaj

  1. pliki zawierające plik z ocenami uczniów z trzeciej klas
  2. pliki o rozmiarze większym niż 100kB
  3. pliki zawierające pesele osób, które chodzą do klas “c”.
  4. pliki o rozmiarze od 20kB do 1MB
Zadanie 3
  • Utwórz archiwum Szkola.tar zawierające wszystkie pliki z katalogu Szkola.
  • Sprawdź (wypisz) zawartość archiwum
  • Dodaj do archiwum zawartość katalogu matura
  • Utwórz katalog Kopia
  • Przekopiuj archiwum Szkola.tar do Kopia i rozpakuj
Zadanie 4

Dla każdego poznanego rodzaju kompresji  (gzip, bzip, xz, itp.)  utwórz archiwum zawierające katalog Szkola. Porównaj rozmiary utworzonych archiwów.

Pamiętaj o odpowiednich rozszerzeniach dla plików archiwum

Zajęcia 3

echo - wyświetla napis na ekranie

echo “Widaj świecie” – wyświetli na ekranie napis Witaj świecie

Potoki strumienie

>

echo “Witaj” > plik.txt – przekieruje napis do pliku plik.txt a jeśli plik istnieje to go skasuje

>>

echo “Witaj” >> plik.txt – przekieruje napis do pliku plik.txt a jeśli plik istnieje to dopisze zawartość na końcu pliku

 | – pipe

cat plik.txt | head -n 3 | tail -2 – Wyświetla plik txt | Wyświetla pierwsze 3 linijki | Wyświetla ostatnie dwie linijki

Cut, Paste

Paste – łączy pliki poziomo
-d  – sposób łączenia

123.txt
1
2
3
abc.txt
a
b
c
mix.txt
a;b;c
1;2;3
a1;b2;c2

Paste 123.txt abc.txt -d ” ” – łączy pliki “poziomo”

1a
2b
3c

 Cat mix.txt | cut -d “;” -f2  — Wycina 2 kolumne gdzie rozdzieleniem jest ;

b
2
b2

Powtórka

W katalogu nazwiskoimie

1. Utwórz strukture katalogów

Szkola
—Klasa1
—Klasa2
—Klasa3

W każdej klasie utwórz plik uczniowie.txt i wpisz po 5 nazwisk.

2. Przejdz do katalogu Szkola i przekopiuj pliki uczniowie.txt bezpośrednio do katalogu Szkola, znieniając im odpowiednio nazwy na uczniowie_klasaX.txt  gdzie X to nr klasy.
3. Skasuj katalogi KlasaX i pliki w nich nie ruszając się z katalogo Szkoła
4. Spakuj znanymi metodami katalog Szkola i wyświetl liste plików które powstały. Która metoda konpresji w tym przypadku jest najlepsza ?
5. Nadaj uprawnienia dla spakowanych plików na -rw—-rwx 

Przygotowanie

Utwórz pliki:
1. Plik oceny.txt – z ocenami od 1 do 6 w każdej linijce 1 ocena (20 rekordów).
2 Utwórz plik mezczyzni.txt i kobiety.txt wpisz do każdego pliku 10 imion.
3 Utwórz plik nazwiska.txt z 20 nazwiskami.

Pamiętaj o usunięciu spacji na końcu pliku.

Zadanie 1

1. Wykorzystując echo, > i >>

Utwórz plik wizytowka.txt

######
Imie Nazwisko
Zawod
######

2. Wyświetl 2 i 3 linijke z pliku wizytowka.txt

 

Zadanie 2

1. Za pomoca cat utworz plik  imiona.txt z plików mezczyzni.txt i kobiety.txt
2. Za pomoca paste polacz pliki nazwiska.txt i imiona.txt oceny.txt wynik wyślij do uczniowie.txt
3. Wyświetl na ekrananie tylko nazwiska i oceny bez imion

 

Zadanie 3

1. Wyświetl szczegółową liste plików wszystkich plików katalogu /home/student
2. Wyświetl pliki wieksze niż 20k
3. Wyświetl pliki rozpoczynające się na litere c – Uwzględnij wielkość liter
4. Utwórz kopie o nazwie “kopia” największego pliku w katalogu domowym jeśli nie żadnego pliku utwórz dowolny
5. Nadaj mu uprawnienia -rw-rw-rw-
6. Skompresuj go 2 metodami
7. Wyszukaj pliki które zaczynają się na litere i i mają rozszerzenie txt
8. Wyświetl wszystkie pliki które zawierają a i nie posiadają rozszerzenia txt
9. Wyświelt pliki modyfikowane 3 i 4 dni temu. zapisz wynik do pliku 34dni.txt
10. Przenieś plik 34dni.txt do katalogi nazwiskoimie

2o możliwych punktów zaliczenie od 10

Grupa 3

11,5 #3201
12,5 #3197
0 #3057
18 #3789
19 #010
10 #3050
16 #3969
0 #DYZ
4,5 #3789
15,5 #3666
17 #3160
16,5 #3111
15 #3485
8 #3769
14 #3992

Grupa 4

14 #4755
14
11 #4669
10
15 #4737
11,5 $4881
17,5
11 #4666
13 #4666
8
9 #4661
17
7,5 #4111

Grupa 1

7 #1915
13,5 #0101
9,5 #1258
18 #1157
13,5 #1281
15 #1237
15,5 #1599
18 #2369
15,5 #1139
0
10 #1456
13 #1784
14,5 #1177
14 #1197

Grupa 2

17,5 #2029
14,5 #2631
17 #2321
16,5
13 #2644

Użycie pierwiastka w pythonie

from math import sqrt #sqrt() oblicza pierwiastek

x = sqrt(100)
print(x)

Edytor do programowania w pythonie przez strone www
https://repl.it/languages/python3

Kurs pythona3
https://www.w3schools.com/python/default.asp

Kurs pythona3 po polsku
https://www.learnpython.org/pl/