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

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

System operacyjny Linux

pico mojskrypt bash mojskrypt chmod +x mojskrypt./mojskrypt

Bash - wprowadzenie. Bash - wprowadzenie 1/39

1 Przygotował: mgr inż. Maciej Lasota

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

Skrypty powłoki w systemie Linux

Powłoka bash. Kurs systemu Unix 1

Pracownia Komputerowa wykład III

Administracja sieciowymi systemami operacyjnymi III Klasa - Linux

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

Tworzenie skryptu: Skrypty powłoki

Powłoka interpreter poleceń systemu UNIX

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

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

- wszystkie elementy - wszystkie elementy

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

Technologie Informacyjne - Linux 3

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

Strona1. Linux. Skrypty powłoki

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

Programowanie skryptów powłoki

Wprowadzenie do programowania w powłoce

Interpreter poleceń oraz zmienne środowiskowe

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

PODSTAWY INFORMATYKI

Języki i metodyka programowania. Typy, operatory, wyrażenia. Wejście i wyjście.

Wstęp do Informatyki dla bioinformatyków

Powłoka (shell) Powłoka ksh

Operatory zmiany sposobu przypisania standardowych strumieni >,<,>> Jeżeli pierwsze polecenie powiodło się to wykona drugie

Kurs pisania skryptów w powłoce BASH

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

Środowisko programisty Zestaw 7

JAVA?? to proste!! Autor: wojtekb111111

1 Podstawy c++ w pigułce.

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ć

Systemy operacyjne 11

Architektura systemów informatycznych. Powłoka systemowa Architektura procesora

Systemy operacyjne Programowanie w języku powłoki sh

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

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

Ćwiczenie 1. Wprowadzenie do programu Octave

Pascal - wprowadzenie

Metody numeryczne Laboratorium 2

Po uruchomieniu programu nasza litera zostanie wyświetlona na ekranie

Wprowadzenie do Scilab: podstawy języka Scilab

Informatyka, Ćwiczenie Uruchomienie Microsoft Visual C++ Politechnika Rzeszowska, Wojciech Szydełko. I. ZałoŜenie nowego projektu

Programowanie strukturalne. Opis ogólny programu w Turbo Pascalu

Ćwiczenie 1. Wprowadzenie do programu Octave

Linuks skrypty Część teoretyczna

POPULARNE POLECENIA SKRYPTY. Pracownia Informatyczna 2

1 Podstawy c++ w pigułce.

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

Podstawy programowania. Wykład: 4. Instrukcje sterujące, operatory. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Przykład 1 -->s="hello World!" s = Hello World! -->disp(s) Hello World!

BASH - LINIA POLECEŃ. Bioinformatyka 2018/2019

PRACOWNIA INFORMATYCZNA BASH - PODSTAWOWE INFORMACJE

Bash i algorytmy. Elwira Wachowicz. 20 lutego

Systemy operacyjne / Programowanie w języku powłoki sh str.1/19

Podstawy programowania w Bash'u

Wprowadzenie do programowania shella (bash)

Autor: dr inż. Katarzyna Rudnik

Bash - instrukcje warunkowe, pętle i funkcje

Komentarze w PHP (niewykonywane fragmenty tekstowe, będące informacją dla programisty)

Elementy języka Scheme

Przekierowanie wejścia wyjścia:

lekcja 8a Gry komputerowe MasterMind

Skrypty startowe. Tryb interaktywny tryb logowania: nie logowanie: Tryb nieinteraktywny

Naukę zaczynamy od poznania interpretera. Interpreter uruchamiamy z konsoli poleceniem

Warunki logiczne instrukcja if

Programowanie w BASH u Skrypt do ćwiczeń

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

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

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

Kier. MTR Programowanie w MATLABie Laboratorium. 1. Tworzenie m-plików skryptowych i uruchamianie skryptów

Wprowadzenie do tworzenia skryptów dla bash

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

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

Kiedy i czy konieczne?

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

Podstawy programowania w języku C i C++

Bash, skrypty. Wojciech Dudek. 15 listopada Uniwersytet Warszawski

Warsztaty dla nauczycieli

Część 4 życie programu

Podstawy i języki programowania

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

Systemy Operacyjne. Część II Zarządzanie/Administracja Systemem. 5: Skrypty. autor: mgr inż. Andrzej Woźniak

Wprowadzenie do programowania w języku Visual Basic. Podstawowe instrukcje języka

Podstawy programowania w języku Visual Basic dla Aplikacji (VBA)

SKRYPTY. Zadanie: Wyznaczyć wartość wyrażenia arytmetycznego

Opis: Instrukcja warunkowa Składnia: IF [NOT] warunek [AND [NOT] warunek] [OR [NOT] warunek].

Podstawy JavaScript ćwiczenia

Przetwarzanie sygnałów

Programowanie w Turbo Pascal

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

Ogólny schemat prostego formularza: A może lepiej zamiast przycisku opartego o input tak:

Instrukcje sterujące mgr Tomasz Xięski, Instytut Informatyki, Uniwersytet Śląski Katowice, 2012

Zajęcia nr 1 Podstawy programowania. dr inż. Łukasz Graczykowski mgr inż. Leszek Kosarzewski Wydział Fizyki Politechniki Warszawskiej

Trochę o plikach wsadowych (Windows)

Transkrypt:

Informacje o tym pliku - zobacz koniecznie! Parametry z jakimi można uruchomić skrypt Zmienne środowiskowe Korzystanie z argumentów skryptu Warunkowe uruchamianie poleceń Znaki specjalne odwzorowujące nazwy plików Przekierunkowywanie wyjścia/wejścia plików Użycie znaków specjalnych grupujących : ',",` Słowa kluczowe shellu borne'a Konstrukcje programistyczne Funkcje Operacje arytmetyczne Używanie zmiennych Specjalne znaki wyświetlane przez konsolę Porównywanie ciągów Porównywanie zmiennych liczbowych Testowanie plików Zastosowania - przykłady skryptów Parametry z jakimi można uruchomić skrypt : Konstrukcja set -parametr Wszystkie zmienne będą eksportowane. Komendy czytane z pliku. Non-interactive mode. Zablokuj kreację pliku przez shell. Zlokalizuj i zapamiętaj zdefiniowane funkcje. Interactive mode. Argumenty w środowisku do wykonania. Czytanie komend bez ich wykonywania. Restricted mode. Komendy czytane z wejścia. Pojedyncza komenda zostanie wykonana a potem wyjście z shell'a. Nieustawione zmienne będą błędami przy podstawianiu. Verbose mode Śledzenie wykonywania programu.

Zmienne środowiskowe: Ścieżka przeszukiwana komendą.! "!#!% Katalog domowy użytkownika. Separator pól - zwykle space, tabulator, i znak nowej lini. Ścieżka do specjalnego pliku (mail box), używana przez e-mail. Ścieżka przeszukiwana przy wykonywaniu pliku. Pierwszy znak zachęty - zwykle :$. Drugi znak zachęty - zwykle : &. ' Typ terminala. Korzystanie z argumentów skryptu (zmienne specjalne): Argumenty dostarczamy wykonując skrypt : $ nazwaskryptu argument1 argument2 argument3... $( Liczba argumentów dostarczonych do programu. $ Flagi z jakimi uruchomiono skrypt komendą. $) Status błędu ostatnio wykonanej komendy. $$ Numer procesu aktualnego shell'a. $* Numer procesu aktualnego podprocesu. $+Wszystkie argumenty w ciągu. $, Wszystkie argumenty w ciągu. $ Argumenty w tablicy,gdzie 'n' jest numerem argumentu. $- Nazwa aktualnego shell'a. Znaki specjalne odwzorowujące nazwy plików:, Jakikolwiek ciąg ) Pojedynczy znak./*0ranga, lista lub nie taki Przekierunkowywanie wyjścia/wejścia plików: &123 Przekierowanie wyjścia do pliku. &&123Dopisanie wyjścia do pliku. 4123 Przekierowanie wejścia z pliku. 5 6 7 Oddziela komendy. Połączenie wyjścia 1 shell'a z wejściem 2-go. Uruchomienie w tle(jeśi na końcu komendy).

88 Zastępowanie komendy - wyjście traktowane jako argumenty. Przykłady : foo="hello there \$name" Zmienna foo będzie miała wartość hello there $name dzięki znakowi \ foo='hello there $name' Zmienna foo będzie miała wartość hello there $name dzięki nawiasom '.' foo=`ls -l fgrep Jul` wyrażenie ls -l fgrep Jul zostanie zinterpretowane a wynik zostanie przekazany jako nowa wartość zmiennej foo Słowa kluczowe shellu borne'a: if for then while else until elif do fi done case { esac } :# :% :; :< :# :% :; 2 :< := 2 >#3 55 >%3 55 >3 5 Przyklad: $ #6'3 '

> 4@@-55 %6A3 26> &@@-55 ;6B3 B2 26> &@@-55,3! C/$ 2 # D2 Przykład: (E>E F# D2.$2=0 EF8>$,$8 $E F8>$H#8 I J >2 $E # < K #L I J >2 $ 2

Przykład: ( 2.$(E-0 $#8>$(#813 $#%;< #;13 %%13 ;#13 <-13 $ J2#% Przykład: (> (.$(E-0 BM2 # F- N$, FOO>$H$NOO $ D2

22 Funkcje : 13 P $#>DQC> Q R>C>QC>C> : 5 S Konstrukcje programistyczne: case wciąg1 in ciag1) instrukcja;; ciag2) instrukcja;; *) instrukcja;; esac wciąg1 jest porównywany z ciag1 i ciag2. Jeśli odpowiadają sobie odpowiednie zostaną wykonane aż do dwóch średników.jeśli wciąg1 nie odpowiada żadnej możliwości wykonane zostaną po gwiazdce. for zmienna1 [ in list ] do instrukcja done if [wyrażenie1]; then elif [wyrażenie2]; then else fi () Pętla jest wykonywana dla każdego elementu w liście list.lista może być zmienną zawierającą kilka fraz oddzielanych spacją lub może być listą wartości wpisywanych bezpośrednio w wyrażenie. Wyrażenie [ in list ] jest opcjonalne. Jeśli nie jest obecne pętla jest wykonywana dla każdej zmiennej wejściowej skryptu (parametru skryptu). Wyrażenie1 jest obliczane i jeżeli stanowi prawdę to po then są wykonywane.następnie wyrażenie2 jest obliczane i jeżeli stanowi prawdę to po drugim then są wykonywane. Jeśli wyrażenie1 i wyrażenie2 nie zwróci prawdy po else są wykonywane. Wyrażenia elif and else są opcjonalne. Wykonuje w subshell'u.

{ ;} Wykonuje w obecnym shell'u. name () { ;} while [wyrażenie] do done until [wyrażenie] do done Definicja funkcji. Instrukcja while powtarza wykonywanie instrukcjii między do i done dopuki ostatnia instrukcja w wyrażeniu jest prawdą, w przeciwnym przypadku pętla jest przerywana. powtarza wykonywanie instrukcjii między do i done dopuki ostatnia instrukcja w wyrażeniu jest fałszem, w przeciwnym przypadku pętla jest przerywana. Wynik operacji arytmetycznych uzyskamy dzięki dyrektywnie expr >Q# > Q% zwróci wynik działania operator na zmiennych 1 i 2. H Dodawanie. Odejmowanie., Mnożenie. @ Dzielenie. TReszta z dzielenia. Używanie zmiennych: $Q $PQS $PQ JS $PQF JS $PQ) S Wartość Q; nic jeśli Q jest nie zdefiniowana to samo; Używa się takiej konstrukcji gdy wartość zmiennej ma być przed jakimś ciągiem Wartość Q jeśli zdefiniowana; w przeciwnym wypadku J; Q pozostaje niezmieniona. Wartość Q jeśli zdefiniowana; w przeciwnym wypadku J. Jeśli nie jest zdefiniowana, $Q jest usawiana na J Wartość Q jeśli zdefiniowana; w przeciwnym wypadku wyświetl i wyjdź z shell'a. Jeśli pusty, wyświetli: QM> $QPQH JS J jeśli $Q zdefiniowana, w przeciwnym wypadku nic Specjalne znaki wyświetlane przez konsolę: J Backspace

Linia bez znaku nowej lini Form Feed: nowa strona lub nowy ekran Nowa linia Powrót karetki Tab Vertical Tab Backslash -Jedno,dwu lub trzy cyfrowa ósemkowa reprezentacja znaku ASCII Porównywanie ciągów #F% Prawda jeśli #jest takiej samej długości i posiada te same znaki jak % #*F%Prawda # nie jest taki sam jak % # Prawda jeśli długość # jest większa niż 0 (nie jest pustym ciągiem) Q# Prawda jeśli # jest pusty (ma długość 0) Prawda jeśli nie jest pusty Porównywanie zmiennych liczbowych: Prawda jeśli jest równe (equal) Prawda jeśli nie jest równe (not equal) Prawda jeśli jest większe ( greater than) od Prawda jeśli jest większe lub równe (greater or equal) Prawda jeśli jest mniejsze (less than) niż #2% Prawda jeśli # jest mniejsze lub równe (less or equal) % Testowanie plików: Konstrukcja: if [! operator(-r,-w,-d) filenm ] 2 Prawda jeśli użytkownik ma prawo do czytania pliku D2Prawda jeśli użytkownik ma prawo do pisania do pliku 2 Prawda jeśli użytkownik ma prawo do wykonywania pliku 2 Prawda jeśli 2 jest zwykłym plikiem 2 Prawda jeśli 2 jest katalogiem 2 Prawda jeśli 2 jest specjalnym plikiem znakowym J2 Prawda jeśli 2 jest specjalnym plikiem blokowym Prawda jeśli rozmiar 2 jest różny od zera J Prawda jeśli użądzenia związane z plikiem J (1 orginalnie) jest terminalem

Warunkowe uruchomienie poleceń: instrukcja && instrukcja - wykona 2 komende tylko jeśli 1-sza zostanie poprawnie wykonana. komenda1 komenda2 - wykona 2 komende tylko jeśli 1-sza nie zostanie poprawnie wykonana. Przykłady skryptów: Pytanie o kontynuację: C D MU N N!V'.$N!V'FN $N!V'F0 Wyświetlenie argumentów z którymi uruchomiono skrypt: 2.$(E-0 $#8>$(#813 Sprawdzenie,czy jest podłączony użytkownik: C5 DW Manipulacja z ciagami : FX6#%#KX FX68@?,?,?,1?,3?,?,@#@8X FX6D8P>$<S8X FXXX5 $<X FX61DCQ5 $3X