Zmienne powłoki. Wywołanie wartości następuje poprzez umieszczenie przed nazwą zmiennej znaku dolara ($ZMIENNA), np. ZMIENNA=wartosc.

Podobne dokumenty
1 Przygotował: mgr inż. Maciej Lasota

Prawa dostępu do plików (1)

Skrypty powłoki Skrypty Najcz ciej u ywane polecenia w skryptach:

Administracja sieciowymi systemami operacyjnymi III Klasa - Linux

Technologie Informacyjne - Linux 2

System operacyjny Linux

Bash - wprowadzenie. Bash - wprowadzenie 1/39

Pracownia Komputerowa wykład III

Programowanie w języku Python. Grażyna Koba

Temat zajęć: Tworzenie skryptów powłoki systemu operacyjnego.

Technologie Informacyjne - Linux 3

Skrypty i funkcje Zapisywane są w m-plikach Wywoływane są przez nazwę m-pliku, w którym są zapisane (bez rozszerzenia) M-pliki mogą zawierać

Skrypty BASH a. Systemy Operacyjne 2. Mateusz Hołenko. 4 października 2012

Skrypty powłoki w systemie Linux

Wprowadzenie do programowania w powłoce

Wstęp do informatyki. stęp do informatyki Polecenia (cz.2)

Systemy operacyjne. System operacyjny Linux - wstęp. Anna Wojak

Programowanie skryptów powłoki

Trochę o plikach wsadowych (Windows)

skrypt powłoki to plik tekstowy, rozpoczynający się sekwencją: pierwsza linia określa powłokę, w której wykonywany jest skrypt; druga to komentarz

Interpreter - EasyCompile

W pierwszej kolumnie wyświetlany jest identyfikator procesu (pid)

- wszystkie elementy - wszystkie elementy

PODSTAWY INFORMATYKI

Ćwiczenie: JavaScript Cookies (3x45 minut)

Współpraca Integry z programami zewnętrznymi

pico mojskrypt bash mojskrypt chmod +x mojskrypt./mojskrypt

1 Podstawy c++ w pigułce.

Interpreter poleceń oraz zmienne środowiskowe

JĘZYK SHELL JEST PEŁNYM JĘZYKIEM PROGRAMOWANIA

11. PROFESJONALNE ZABEZPIECZENIE HASŁEM

Warsztaty dla nauczycieli

Cw.12 JAVAScript w dokumentach HTML

Powłoka bash. Kurs systemu Unix 1

Przedrostkowa i przyrostkowa inkrementacja i dekrementacja

Celem tego projektu jest stworzenie

II. Programowanie wsadowe DOS/Windows

Instrukcje warunkowe i skoku. Spotkanie 2. Wyrażenia i operatory logiczne. Instrukcje warunkowe: if else, switch.

Laboratorium Wstawianie skryptu na stroną: 2. Komentarze: 3. Deklaracja zmiennych

Instrukcja SO powłoka BASH i skrypty powłoki Istotne jest zrozumienie działania narzędzia history powłoki BASH. Każde polecenie wprowadzone i

Systemy operacyjne 11

Podstawy Programowania Podstawowa składnia języka C++

Systemy operacyjne. Programowanie w shellu: BASH. Wydział Inżynierii Metali i Informatyki Przemysłowej

Przekierowanie wejścia wyjścia:

Zmienne środowiskowe: Ścieżka przeszukiwana komendą.

Lekcja 10. Uprawnienia. Dołączanie plików przy pomocy funkcji include() Sprawdzanie, czy plik istnieje przy pmocy funkcji file_exists()

Podstawowe informacje o obsłudze pliku z uprawnieniami licencja.txt

Tworzenie skryptu: Skrypty powłoki

Systemy operacyjne na platformach mobilnych 2 Podstawy obsługi powłoki Bash

Powłoka interpreter poleceń systemu UNIX

Pracownia Komputerowa wykład III

SSK - Techniki Internetowe

Operacje wykonywane są na operandach (argumentach operatorów). Przy operacji dodawania: argumentami operatora dodawania + są dwa operandy 2 i 5.

JAVASCRIPT PODSTAWY. opracowanie: by Arkadiusz Gawełek, Łódź

Linuks skrypty Część teoretyczna

UMOWY INSTRUKCJA STANOWISKOWA

Podstawy Programowania C++

XML i nowoczesne technologie zarządzania treścią 2007/08

Formy dialogowe w środowisku Gnome

Ćwiczenie 1. Przygotowanie środowiska JAVA

Języki skryptowe w programie Plans

MenadŜer haseł Instrukcja uŝytkownika

Instrukcja warunkowa i złoŝona.

Oczywiście plik musi mieć rozszerzenie *.php

Program 14. #include <iostream> #include <ctime> using namespace std;

Programowanie w BASH u Skrypt do ćwiczeń

Uwagi dotyczące notacji kodu! Moduły. Struktura modułu. Procedury. Opcje modułu (niektóre)

Pracownia Informatyczna I ORGANIZACJA ZAJĘĆ, ZASADY ZALICZENIA

Nazwa implementacji: Nauka języka Python wyrażenia warunkowe. Autor: Piotr Fiorek. Opis implementacji: Poznanie wyrażeń warunkowych if elif - else.

JAVASCRIPT PODSTAWY. opracowanie: by Arkadiusz Gawełek, Łódź

1. shell co to i co umożliwia, jakie są shell e. 2. skrypty powłoki. crone dr inż. Anna Zatwarnicka Skrypty i crone

Powtórka algorytmów. Wprowadzenie do języka Java.

W przeciwnym wypadku wykonaj instrukcję z bloku drugiego. Ćwiczenie 1 utworzyć program dzielący przez siebie dwie liczby

Programowanie w językach wysokiego poziomu

Ćwiczenie nr 14: System Linux

lekcja 8a Gry komputerowe MasterMind

Projektowanie aplikacji internetowych Pisanie skryptów wiersza poleceń - pętle

DECLARE VARIABLE zmienna1 typ danych; BEGIN

Kompilator języka Basic można bezpłatnie pobrać ze strony z zakładki DOWNLOAD.

Systemy operacyjne. Instrukcja laboratoryjna. Ćwiczenie 1: Polecenia systemu UNIX/LINUX. Opracował: dr inż. Piotr Szpryngier

SYSTEMY OPERACYJNE ĆWICZENIE POLECENIA SYSTEMU MSDOS

Powłoka (shell) Powłoka ksh

Ćwiczenie 1. Wprowadzenie do programu Octave

POPULARNE POLECENIA SKRYPTY. Pracownia Informatyczna 2

Informacja o języku. Osadzanie skryptów. Instrukcje, komentarze, zmienne, typy, stałe. Operatory. Struktury kontrolne. Tablice.

12. Skrypty w Linux - funkcje, instrukcje sterujące i obliczenia arytmetyczne

Egzamin pisemny z przedmiotu: Systemy operacyjne Semestr I

Po uruchomieniu programu nasza litera zostanie wyświetlona na ekranie

Instalacja i opis podstawowych funkcji programu Dev-C++

XII. Warunek wielokrotnego wyboru switch... case

Aplikacje internetowe - laboratorium

Strona1. Linux. Skrypty powłoki

Podstawy programowania skrót z wykładów:

3. Instrukcje warunkowe

Środowisko programisty Zestaw 7

Smarty PHP. Leksykon kieszonkowy

Praca w programie Power Draft

Wstęp do Informatyki dla bioinformatyków

Projekt ZSWS. Instrukcja uŝytkowania narzędzia SAP Business Explorer Analyzer. 1 Uruchamianie programu i raportu. Tytuł: Strona: 1 z 31

Wiersz poleceń Windows

Transkrypt:

Zmienne powłoki Zmienne powłoki (shell variables) to tymczasowe zmienne, które mogą przechowywać wartości liczbowe lub ciągi znaków. Związane są z powłoką, Przypisania wartości do zmiennej następuje poprzez uŝycie = ZMIENNA=wartosc Wywołanie wartości następuje poprzez umieszczenie przed nazwą zmiennej znaku dolara ($ZMIENNA), np. echo $ZMIENNA 1

Zmienne Środowiskowe Zmienna środowiskowa (environment variable) przechowuje wartości liczbowe lub ciągi znaków podobnie jak zmienna powłoki, jednak dostępna jest dla wszystkich programów, nie tylko dla powłoki. Przypisanie wartości zmiennej środowiskowej następuje w taki sam sposób jak zmiennej powłoki, poprzez uŝycie = Po przypisaniu wartości naleŝy wykonać polecenie export, aby przenieść zmienną do pamięci zmiennych środowiskowych ZMIENNA=wartosc export ZMIENNA Zmienna PATH zawiera ścieŝkę poleceń, czyli listę katalogów, które są przeszukiwane kiedy nakaŝemy powłoce wykonania jakiegoś polecenia, echo $PATH Poszczególne katalogi oddzielone są od siebie znakiem : MoŜna dopisywać nowe katalogi do zmiennej PATH, dodając np. katalog ze skryptami uŝytkownika PATH=nazwa_katalogu:$PATH dodaje dany katalog na początku zmiennej PATH=$PATH:nazwa_katalogu dodaje dany katalog na końcu zmiennej 2

Wprowadzenie do skryptów powłoki Skrypt to sekwencja poleceń zapisanych w pliku Wszystkie skrypty powinny zaczynać się od wiersza #!/bin/sh oznaczającego, Ŝe polecenia z tego pliku powinny być wykonywane przez program /bin/sh # - oznaczenie komentarza x*x cudzysłów sprawia, Ŝe powłoka traktuje wpisany tekst jako całość i nie zmienia go x*x podwójny cudzysłów działa podobnie, pokazuje jednak wartości zmiennych, znajdujących się wewnątrz cudzysłowów Przykładowy skrypt: #!/bin/sh echo to jest przykładowy skrypt echo który wypisuje na ekranie dwie linijki tekstu 3

Uruchamianie skryptów W celu umoŝliwienia uŝytkownikom uruchamiania skryptów naleŝy nadać im uprawnienia do odczytu i wykonywania (bity r, x) chmod +rx [nazwa_skrytpu] pozwala na uruchamianie skryptu przez wszystkich uŝytkowników (nadaje wszystkim uprawnienia do odczytu i wykonywania) chmod 700 [nazwa_skryptu] skrypt moŝe być uruchamiany tylko przez właściciela śeby moŝna było uruchomić skrypt powinien on znajdować się w jednym z katalogów wymienionych w ścieŝce wyszukiwania MoŜna takŝe uruchomić skrypt podając jego nazwę wraz z pełną ścieŝką dostępu, np. /home/student/dokumenty/nazwa_skryptu JeŜeli uruchamiany skrypt znajduje się w aktualnym katalogu roboczym wystarczy wywołanie./nazwa_skryptu 4

Ćwiczenie 1 Napisz skrypt wyświetlający dwie poniŝsze linijki tekstu: To jest skrypt UŜytkownika Imię Nazwisko Uruchom skrypt w ten sposób aby efekt jego działania zapisany został w pliku wynik_skryptu, który będzie znajdował się na pulpicie 5

Zmienne specjalne (1) Skrypty powłoki mogą pobierać wartości z wiersza poleceń oraz wynikające z uruchamianych poleceń Zmienne $1, $2, $3... zmienne te przechowują wartości parametrów przekazywanych do skryptu Parametry moŝemy podać np. podczas uruchamiania skrytpu: nazwa_skryptu parametr1 parametr2 parametr2 parametr4 itd. Przykładowy skrypt o nazwie sk1 #!/bin/sh Echo Wartość pierwszego parametru: $1 Echo Wartość czwartego parametru: $4 Po uruchomieniu sk1 jeden dwa trzy cztery piec wypisane zostanie: Wartość pierwszego parametru: jeden Wartość czwartego parametru: cztery Instrukcja shift usuwa pierwszy parametr $1 i przesuwa kolejne o jedną pozycję do przodu, tzn., Ŝe parametr $2 staje się parametrem $1, a $3 staje się $2 itd. #!/bin/sh Echo Wartość pierwszego parametru: $1 Shift Echo Wartość drugiego parametru: $1 Shift Echo Wartość trzeciego parametru: $1 6

Zmienne specjalne (2) Zmienna $# przechowuje liczbę parametrów, które zostały przekazane do skryptu, np: #!/bin/sh Liczba parametrów przekazanych do skryptu: $# sk1 a b c d e f Liczba parametrów przekazanych do skryptu: 5 Zmienna $@ przechowuje wszystkie parametry przekazywane do skryptu i pozwala na przekazanie ich dalej, do poleceń, które uruchamiane są wewnątrz skryptu Zmienna $0 reprezentuje nazwę skryptu Zmienna $$ przechowuje identyfikator procesu powłoki Zmienna $? przechowuje kod wyjścia (exit code) ostatnio wykonywanego polecenia Kod wyjścia - wartość przekazywane przez program po zakończeniu jego działania. Wartość 0 oznacza, Ŝe program zakończył działanie bez błędów. Inny kod oznacza, Ŝe podczas wykonywania programu wystąpiły jakieś problemy 7

WyraŜenia warunkowe (1) WyraŜenia warunkowe pozwalają sprawdzania wykonania warunków. Zazwyczaj są to instrukcje if-then-else lub case Schemat działania wyraŝenia warunkowego Powłoka uruchamia poleceni znajdujące się za słowem kluczowym if JeŜeli kod wyjścia ma wartość 0 wykonywane są polecenia znajdujące się po słowie kluczowym then JeŜeli kod wyjścia był róŝny od 0 to wykonywane są polecania umieszczone po słowie kluczowym else WyraŜenie warunkowe kończy się słowem kluczowym fi Znak [ to program sprawdzający czy określony warunek jest prawdziwy (jego inna nazwa to test) #!/bin/sh if [ "$1" = nazwa ]; then echo pierwszym parametrem było słowo "nazwa" else echo w pierwszym parametrze nie było słowa "nazwa" echo ale za to było słowo '"'$1'"' fi 8

WyraŜenia warunkowe (2) Konstrukcja && ( i, and ) - powoduje uruchomienie pierwszego polecenia, a jeŝeli jego kod wyjścia ma wartość 0 (czyli program zadziałał bez błędu) uruchamiana jest kolejne polecenie nazwa_polecania1 && nazwa_polecenia2 Konstrukcje ( lub, or ) - uruchamiane jest pierwsze polecenie, a jeŝeli kod wyjściowy ma wartość róŝną od 0 (czyli wystąpił błąd podczas wykonywania polecenia), to uruchamiana jest drugie polecenie nazwa_polecania1 nazwa_polecenia2 #!/bin/sh if [ "$1" = nazwa ] [ "$1" = wartosc ]; then echo pierwszym parametrem było słowo '"'$1'"' else echo w pierwszym parametrze nie było słowa "nazwa" ani słowa "wartość" echo ale za to było słowo '"'$1'"' fi 9

Ćwiczenie 2 Utwórz skrypt, który wykona następujące czynności: 1. sprawdzi czy dwa pierwsze parametry podane przez uŝytkownika nie były takie same 2. JeŜeli warunek będzie prawdziwy (dwa pierwsze parametry będą się róŝniły) to utworzy na pulpicie dwa pliki o nazwach takich jak parametry 3. JeŜeli warunek zwróci wartość fałszu (dwa pierwsze parametry będą takie same) to wygeneruje komunikat Dwukrotnie podano tą samą wartość parametru: wartość_parametru 10

WyraŜenia warunkowe (3) testy warunków WyraŜenia warunkowe mogą zostać wykorzystane do sprawdzenia czy pliki spełniają określone warunki [ -f nazwa_pliku ] - zwraca wartość zero jeŝeli plik jest zwykłym plikiem, a nie na przykład katalogiem Umieszczenie! przed sprawdzanym warunkiem powoduje negację warunku, np. [! -f nazwa_pliku ] - zwraca wartość 0 jeŝeli plik nie jest zwykłym plikiem -a i -o to opcje operacji logicznych and i or [ -f nazwa_pliku1 -a nazwa_pliku_2 ] - sprawdza czy plik1 i plik2 są zwykłymi plikami Wybrane testy plików [ -e nazwa_pliku ] - zwraca wartość prawdy (zero), jeŝeli plik istnieje [ -s nazwa_pliku ] zwraca wartość prawdy (zero), jeŝeli plik nie jest pusty [ plik1 -nt plik2 ] - zwraca wartość prawdy jeŝeli plik1 jest nowszy niŝ plik2 [ plik 1 -ot plik2 ] - zwraca wartość prawdy jeŝeli plik1 jest starszy niŝ plik2 11

Ćwiczenie 3 Napisz skrypt, który wykona poniŝsze czynności 1) Utworzy na pulpicie plik o nazwie nazwa_uŝytkownika, do którego zapisane będą poniŝsze informacje Nazwa i grupa/y aktualnego uŝytkownika Lista plików znajdujących się w katalogu domowym uŝytkownika, wyświetlona w ten sposób by widoczne były informacje o tych plikach (data modyfikacji, uprawnienia itp.) Informacje o wielkości katalogów znajdujących się w katalogu domowym uŝytkownika Lista procesów uruchomionych przez uŝytkownika 2) Sprawdzi czy utworzony plik nie jest pusty oraz jeŝeli plik będzie pusty wygeneruje na ekranie komunikat błąd podczas wykonywania ćwiczenia a w przeciwnym wypadku komunikat plik został utworzony poprawnie 12