UJD – 2019/2020 – ITiNM 1 -Informatyka

Linux 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
c– 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 pomoc 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

Zadanie 2

  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 3

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 linijkę dowolnego pliku.

Linux 2

Teoria

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

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

Zadania

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 strukturę 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

Linux 3

Teoria

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

Zadania

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. Przejdź do katalogu Szkola i przekopiuj pliki uczniowie.txt bezpośrednio do katalogu Szkola, zmieniają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 katalog Szkoła
4. Spakuj znanymi metodami katalog Szkola i wyświetl liste plików które powstały. Która metoda kompresji 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 linijkę z pliku wizytowka.txt

Zadanie 2

1. Za pomocą cat otwórz plik  imiona.txt z plików mezczyzni.txt i kobiety.txt
2. Za pomocą paste połącz pliki nazwiska.txt i imiona.txt oceny.txt wynik wyślij do uczniowie.txt
3. Wyświetl na ekranie tylko nazwiska i oceny bez imion

Zadanie 3

1. Wyświetl szczegółową listę plików wszystkich plików katalogu /home/student
2. Wyświetl pliki większe niż 20k
3. Wyświetl pliki rozpoczynające się na literę 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 literę i i mają rozszerzenie txt
8. Wyświetl wszystkie pliki które zawierają a i nie posiadają rozszerzenia txt
9. Wyświetl pliki modyfikowane 3 i 4 dni temu. zapisz wynik do pliku 34dni.txt
10. Przenieś plik 34dni.txt do katalogi nazwiskoimie

Python

Książka

http://jsystems.pl/static/andrzejklusiewicz/PNL.pdf

Edytor

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

Edytor Python Turtle
https://repl.it/languages/python_turtle

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

Zadania

Python 1
Python 2
Python 3
Python turtle