lect. univ. dr. mihai stancu - inf.ucv.roinf.ucv.ro/documents/mihais/so/so-05.pdf · consola...

35
SISTEME DE OPERARE (SO) CURS 5 Lect. Univ. Dr. Mihai Stancu Interfata in linia de comanda

Upload: others

Post on 25-Oct-2019

26 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Lect. Univ. Dr. Mihai Stancu - inf.ucv.roinf.ucv.ro/documents/mihais/SO/SO-05.pdf · consola Matlab, AutoCAD consolă de jocuri (FPS) RE – CURS 5 Shell aplicație care permite accesul

SISTEME DE OPERARE (SO) CURS 5

Lect. Univ. Dr. Mihai Stancu

Interfata in linia de comanda

Page 2: Lect. Univ. Dr. Mihai Stancu - inf.ucv.roinf.ucv.ro/documents/mihais/SO/SO-05.pdf · consola Matlab, AutoCAD consolă de jocuri (FPS) RE – CURS 5 Shell aplicație care permite accesul

SIS

TE

ME

DE

OP

ER

AR

E –

CU

RS

5

S u p o r t d e c u r s

Suport (Introducere în sisteme de operare)

Capitolul 12 – Shell scripting

Secțiunile 12.1, 12.2, 12.6, 12.7

Page 3: Lect. Univ. Dr. Mihai Stancu - inf.ucv.roinf.ucv.ro/documents/mihais/SO/SO-05.pdf · consola Matlab, AutoCAD consolă de jocuri (FPS) RE – CURS 5 Shell aplicație care permite accesul

SIS

TE

ME

DE

OP

ER

AR

E –

CU

RS

5

P r o c e s e

utilizator

kernel

uid

pid

uid uid

inode

program name

filename

username

proces fisier

utilizator

Page 4: Lect. Univ. Dr. Mihai Stancu - inf.ucv.roinf.ucv.ro/documents/mihais/SO/SO-05.pdf · consola Matlab, AutoCAD consolă de jocuri (FPS) RE – CURS 5 Shell aplicație care permite accesul

SIS

TE

ME

DE

OP

ER

AR

E –

CU

RS

5

S t r u c t u r a u n u i s i s t e m d e c a l c u l

utilizator

programe de aplicatie

hardware

shell

nucleu

programe de bază

module

sistemul de operare

Page 5: Lect. Univ. Dr. Mihai Stancu - inf.ucv.roinf.ucv.ro/documents/mihais/SO/SO-05.pdf · consola Matlab, AutoCAD consolă de jocuri (FPS) RE – CURS 5 Shell aplicație care permite accesul

SIS

TE

ME

DE

OP

ER

AR

E –

CU

RS

5

I n t e r f a t a c u u t i l i z a t o r u l

interacțiunea utilizatorului cu aplicațiile și cu sistemul de

operare

ascunde detaliile sistemului de operare

ușurința în utilizare (ease of use)

eficiența în utilizare

acomodarea rapidă: intuitivă, naturală

interacțiunea cu sistemul de calcul

Human Machine Interface

Page 6: Lect. Univ. Dr. Mihai Stancu - inf.ucv.roinf.ucv.ro/documents/mihais/SO/SO-05.pdf · consola Matlab, AutoCAD consolă de jocuri (FPS) RE – CURS 5 Shell aplicație care permite accesul

SIS

TE

ME

DE

OP

ER

AR

E –

CU

RS

5

T i p u r i d e i n t e r f e t e

GUI – Graphical User Interface

WIMP (window, icon, menu, pointing device)

eye-candy

ușor de folosit, intuitivă

ascunderea complexității

CLI – Command Line Interface

execuția de comenzi pentru îndeplinirea sarcinilor

eficiență

automatizarea sarcinilor

resurse consumate reduse

Page 7: Lect. Univ. Dr. Mihai Stancu - inf.ucv.roinf.ucv.ro/documents/mihais/SO/SO-05.pdf · consola Matlab, AutoCAD consolă de jocuri (FPS) RE – CURS 5 Shell aplicație care permite accesul

SIS

TE

ME

DE

OP

ER

AR

E –

CU

RS

5

C L I

Page 8: Lect. Univ. Dr. Mihai Stancu - inf.ucv.roinf.ucv.ro/documents/mihais/SO/SO-05.pdf · consola Matlab, AutoCAD consolă de jocuri (FPS) RE – CURS 5 Shell aplicație care permite accesul

SIS

TE

ME

DE

OP

ER

AR

E –

CU

RS

5

C L I

Page 9: Lect. Univ. Dr. Mihai Stancu - inf.ucv.roinf.ucv.ro/documents/mihais/SO/SO-05.pdf · consola Matlab, AutoCAD consolă de jocuri (FPS) RE – CURS 5 Shell aplicație care permite accesul

SIS

TE

ME

DE

OP

ER

AR

E –

CU

RS

5

C L I – c o n t i n u a r e

prompt + comenzi

tipuri de utilizatori

programatori

administratori de sistem/rețea

utilizatori avansați din punct de vedere tehnic

shell-ul este un caz particular de CLI

alte exemple de CLI

consola GRUB (bootloeader)

consola Python

consola de configurare de echipamente de rețea

consola Matlab, AutoCAD

consolă de jocuri (FPS)

Page 10: Lect. Univ. Dr. Mihai Stancu - inf.ucv.roinf.ucv.ro/documents/mihais/SO/SO-05.pdf · consola Matlab, AutoCAD consolă de jocuri (FPS) RE – CURS 5 Shell aplicație care permite accesul

SIS

TE

ME

DE

OP

ER

AR

E –

CU

RS

5

S h e l l

aplicație care permite accesul la resursele sistemului de operare

poate fi grafic (GUI) sau în linia de comandă (CLI)

în Windows shell-ul este Explorer (GUI)

în Unix

shell GUI: X Window System + KDE/GNOME/Xfce

shell-uri CLI: bash, tcsh, zsh, dash

Cum putem rula o sesiune de shell în Linux?

terminal virtual (ALT+CTRL+F1...F6)

emulator de terminal (konsole, gnome-terminal, xterm etc.)

conexiune de la distanță

terminalul este (pseudo)dispozitivul în care rulează shell-ul

în continuare, shell = shell CLI

Page 11: Lect. Univ. Dr. Mihai Stancu - inf.ucv.roinf.ucv.ro/documents/mihais/SO/SO-05.pdf · consola Matlab, AutoCAD consolă de jocuri (FPS) RE – CURS 5 Shell aplicație care permite accesul

SIS

TE

ME

DE

OP

ER

AR

E –

CU

RS

5

T e r m i n a l v s . s h e l l

terminal = dispozitiv

shell = proces

terminal – cadru, interfață pentru rularea unui shell

fizic (tastatură, monitor)

virtual (ALT+CTRL+F1. . . F6) – tty0, tty1, . . . , tty6

emulator de terminal – pts/0, pts/1, . . .

folosit pentru intrarea/ieșirea standard (stdin/stdout) a unui proces

daemonii nu au acces la nici un terminal (nu au intrare/ieșire

standard)

shell – permite rularea de comenzi

prompt, comenzi, operatori shell

bash, zsh, tcsh

Page 12: Lect. Univ. Dr. Mihai Stancu - inf.ucv.roinf.ucv.ro/documents/mihais/SO/SO-05.pdf · consola Matlab, AutoCAD consolă de jocuri (FPS) RE – CURS 5 Shell aplicație care permite accesul

SIS

TE

ME

DE

OP

ER

AR

E –

CU

RS

5

C o m e n z i s i a r g u m e n t e

comenzile pot avea argumente (opțiuni pentru comandă)

argumentele se separă prin spații

Keep it simple!

nume simple, uneori neintuitive: cp, rm, ls, vi, ps

Cum te documentezi legat de o comandă?

--help

comenzile man/info

Google (“tutorial”, “faq”, “how to”, “example”, “usage”)

Promptul unui shell

alin@anaconda:~$ whoami

alin

Page 13: Lect. Univ. Dr. Mihai Stancu - inf.ucv.roinf.ucv.ro/documents/mihais/SO/SO-05.pdf · consola Matlab, AutoCAD consolă de jocuri (FPS) RE – CURS 5 Shell aplicație care permite accesul

SIS

TE

ME

DE

OP

ER

AR

E –

CU

RS

5

F u n c t i o n a r e a u n u i s h e l l

se introduce o comandă (ls)

shell-ul identifică executabilul asociat (/bin/ls)

este creat un nou process shell (/bin/bash) (fork)

procesul creat se “transformă” conform cu nou executabil

intrarea standard este controlată de noul proces

după execuția comenzii, procesul moare și controlul revine

shell-ului

Page 14: Lect. Univ. Dr. Mihai Stancu - inf.ucv.roinf.ucv.ro/documents/mihais/SO/SO-05.pdf · consola Matlab, AutoCAD consolă de jocuri (FPS) RE – CURS 5 Shell aplicație care permite accesul

SIS

TE

ME

DE

OP

ER

AR

E –

CU

RS

5

F a c i l i t a t i s h e l l

command completion

folosirea tastei TAB

eficiență

completarea comenzii și a argumentelor acesteia

/etc/bash_completion

biblioteca readline (libreadline)

keyboard shortcuts (eficiență în utilizare)

documentare: man bash și căutare după Commands for

Afișare colorată

ls --color=auto

Personalizare prompt

alin@anaconda:~/junk/uso/curs8/tmp$ echo $PS1

$debian_chroot:+($debian_chroot)\u@\h:\w\$

Page 15: Lect. Univ. Dr. Mihai Stancu - inf.ucv.roinf.ucv.ro/documents/mihais/SO/SO-05.pdf · consola Matlab, AutoCAD consolă de jocuri (FPS) RE – CURS 5 Shell aplicație care permite accesul

SIS

TE

ME

DE

OP

ER

AR

E –

CU

RS

5

C a r a c t e r e s p e c i a l e s h e l l

operatori

redirectare: >, <, &>, >>, <<

secvențiere, înlănțuire: ;, ||, &&, |, &

expandare: $

comentare: #

citare (escaping): ', ", \

separare: blank (spațiu)

globbing: ?, *, [, ], {, }

Page 16: Lect. Univ. Dr. Mihai Stancu - inf.ucv.roinf.ucv.ro/documents/mihais/SO/SO-05.pdf · consola Matlab, AutoCAD consolă de jocuri (FPS) RE – CURS 5 Shell aplicație care permite accesul

SIS

TE

ME

DE

OP

ER

AR

E –

CU

RS

5

O p e r a t o r i s h e l l

Redirectarea intrării/ieșirii: >, <

alin@anaconda:~/junk/uso/curs8/tmp$ ls -l > out.txt

alin@anaconda:~/junk/uso/curs8/tmp$ wc -l < out.txt

4

Comunicația între procese: |

alin@anaconda:~/junk/uso/curs8/tmp$ ls -l | wc -l

4

Rularea unui proces în background: &

alin@anaconda:~$ du -hs &

[1] 15766

alin@anaconda:~$ jobs

[1]+ Running du -hs &

Page 17: Lect. Univ. Dr. Mihai Stancu - inf.ucv.roinf.ucv.ro/documents/mihais/SO/SO-05.pdf · consola Matlab, AutoCAD consolă de jocuri (FPS) RE – CURS 5 Shell aplicație care permite accesul

SIS

TE

ME

DE

OP

ER

AR

E –

CU

RS

5

C e e f e c t a r e c o m a n d a d e m a i j o s ?

me@local:~$ < /dev/urandom tr -d -c 'A-Za-z0-9' | head -c 8 ; echo

extrage primele 8 caractere tipăribile (literă sau cifră) dintr-un șir generat

aleator; la final afișează un caracter newline

șterge orice nu este literă sau cifră dintr-un șir infinit generat aleator

/dev/urandom – generator de caractere aleatoare

< /dev/urandom – redictează intrarea standard din fișierul

/dev/urandom

tr – transliterate (comandă shell de tip filtru de text)

-d – delete (șterge)

-c – complement (set complementar)

-c 'A-Za-z0-9' – orice nu este literă sau cifră

extrage primele 8 caractere

head – extrage primele elemente

-c 8 – opt caractere

Page 18: Lect. Univ. Dr. Mihai Stancu - inf.ucv.roinf.ucv.ro/documents/mihais/SO/SO-05.pdf · consola Matlab, AutoCAD consolă de jocuri (FPS) RE – CURS 5 Shell aplicație care permite accesul

SIS

TE

ME

DE

OP

ER

AR

E –

CU

RS

5

V a r i a b i l e s h e l l

nu se folosește spațiu înainte și după egal la inițializare

s-ar considera comandă cu argumente

folosirea valorii unei variabile se realizează prin prefixarea cu

simbolul $ (dollar)

variabilele shell nu au tip (întreg, șir, pointer)

Inițializare variabile în shell

alin@anaconda:~$ a=10

alin@anaconda:~$ b=ana

alin@anaconda:~$ c="ana are mere"

alin@anaconda:~$ d="$b $a"

alin@anaconda:~$ echo $a, $b, $c, $d

10, ana, ana are mere, ana 10

Page 19: Lect. Univ. Dr. Mihai Stancu - inf.ucv.roinf.ucv.ro/documents/mihais/SO/SO-05.pdf · consola Matlab, AutoCAD consolă de jocuri (FPS) RE – CURS 5 Shell aplicație care permite accesul

SIS

TE

ME

DE

OP

ER

AR

E –

CU

RS

5

V a r i a b i l e s p e c i a l e s h e l l

documentație: man bash, și căutare după Special

Parameters

$? – valoarea de retur a ultimei comenzi

$$ – PID-ul procesului shell curent

$! – PID-ul ultimului proces (job) lansat în background

$_ – ultimul argument al ultimei comenzi

Page 20: Lect. Univ. Dr. Mihai Stancu - inf.ucv.roinf.ucv.ro/documents/mihais/SO/SO-05.pdf · consola Matlab, AutoCAD consolă de jocuri (FPS) RE – CURS 5 Shell aplicație care permite accesul

SIS

TE

ME

DE

OP

ER

AR

E –

CU

RS

5

V a r i a b i l e d e m e d i u

definesc contextul de rulare a unui proces

sunt moștenite de procesele copil

exemple: PATH, HOME, PWD, USERNAME, SHELL

operații specifice cu variabile de mediu

listare: env, printenv

configurare variabilă ca variabilă de mediu (exportare)

export myvar

export myvar=42 # init and export

persistența configurării (startup configuration)

în fișierul ~/.bashrc

Page 21: Lect. Univ. Dr. Mihai Stancu - inf.ucv.roinf.ucv.ro/documents/mihais/SO/SO-05.pdf · consola Matlab, AutoCAD consolă de jocuri (FPS) RE – CURS 5 Shell aplicație care permite accesul

SIS

TE

ME

DE

OP

ER

AR

E –

CU

RS

5

V a r i a b i l e d e m e d i u – c o n t i n u a r e

în Windows

per sistem: Control Panel –> System –> Advanced –

> Environment Variables

per utilizator: Control Panel –> Performance and

Maintenance –> System

Page 22: Lect. Univ. Dr. Mihai Stancu - inf.ucv.roinf.ucv.ro/documents/mihais/SO/SO-05.pdf · consola Matlab, AutoCAD consolă de jocuri (FPS) RE – CURS 5 Shell aplicație care permite accesul

SIS

TE

ME

DE

OP

ER

AR

E –

CU

RS

5

C i t a r e ( e s c a p i n g )

Exemple de escaping

alin@anaconda:/tmp/uso$ ls -l

total 0

-rw-r--r-- 1 alin alin 0 2007-11-18 00:14 alfa beta.txt

-rw-r--r-- 1 alin alin 0 2007-11-18 00:14 d.txt

alin@anaconda:/tmp/uso$ ls alfa beta.txt

ls: alfa: No such file or directory

ls: beta.txt: No such file or directory

alin@anaconda:/tmp/uso$ ls "alfa beta.txt"

alfa beta.txt

alin@anaconda:/tmp/uso$ ls 'alfa beta.txt'

alfa beta.txt

alin@anaconda:/tmp/uso$ ls alfa\ beta.txt

alfa beta.txt

alin@anaconda:/tmp/uso$ echo $a

4

alin@anaconda:/tmp/uso$ echo "$a"

4

alin@anaconda:/tmp/uso$ echo \$a

$a

alin@anaconda:/tmp/uso$ echo '$a'

$a

Page 23: Lect. Univ. Dr. Mihai Stancu - inf.ucv.roinf.ucv.ro/documents/mihais/SO/SO-05.pdf · consola Matlab, AutoCAD consolă de jocuri (FPS) RE – CURS 5 Shell aplicație care permite accesul

SIS

TE

ME

DE

OP

ER

AR

E –

CU

RS

5

C i t a r e ( e s c a p i n g ) – c o n t i n u a r e

escaping folosind \ (backslash)

forțează forma literală a caracterului următor

rol special în cazul comenzii echo -e

escaping folosind " " (ghilimele, quote)

escapează textul dintre ghilimele

nu escapează expandarea

' (apostrof, single quote)

escapează orice între apostroafe

alin@anaconda:~$ echo -e "a\tb\tc"

a b c

alin@anaconda:~$ echo "* ; && | > $sir"

* ; && | > file.txt

alin@anaconda:~$ echo '\\\$a$bc$de'

\\\$a$bc$de

Page 24: Lect. Univ. Dr. Mihai Stancu - inf.ucv.roinf.ucv.ro/documents/mihais/SO/SO-05.pdf · consola Matlab, AutoCAD consolă de jocuri (FPS) RE – CURS 5 Shell aplicație care permite accesul

SIS

TE

ME

DE

OP

ER

AR

E –

CU

RS

5

E x p a n d a r e a i n s h e l l

Expandarea variabilelor

alin@anaconda:~$ a=3

alin@anaconda:~$ echo $a

3

Expandarea comenzilor

alin@anaconda:~$ ls | wc -l

17

alin@anaconda:~$ num=$(ls | wc -l)

alin@anaconda:~$ echo $num

17

Expandarea aritmetică

alin@anaconda:~$ a=3

alin@anaconda:~$ ((a++))

alin@anaconda:~$ b=$((a+1))

alin@anaconda:~$ echo $b

5

Page 25: Lect. Univ. Dr. Mihai Stancu - inf.ucv.roinf.ucv.ro/documents/mihais/SO/SO-05.pdf · consola Matlab, AutoCAD consolă de jocuri (FPS) RE – CURS 5 Shell aplicație care permite accesul

SIS

TE

ME

DE

OP

ER

AR

E –

CU

RS

5

G l o b b i n g

Folosire globbing în comenzi shell

alin@anaconda:~/code/tests$ ls

Makefile endian.c struct_bit struct_bit.o tcp_new_sock.c

endian endian.o struct_bit.c tcp_new_sock tcp_new_sock.o

alin@anaconda:~/code/tests$ ls *.c

endian.c struct_bit.c tcp_new_sock.c

alin@anaconda:~/code/tests$ ls end?an.c

endian.c

alin@anaconda:~/code/tests$ ls [a-s]*.c

endian.c struct_bit.c

alin@anaconda:~/code/tests$ ls *.c,o

endian.c endian.o struct_bit.c struct_bit.o

tcp_new_sock.c tcp_new_sock.o

Page 26: Lect. Univ. Dr. Mihai Stancu - inf.ucv.roinf.ucv.ro/documents/mihais/SO/SO-05.pdf · consola Matlab, AutoCAD consolă de jocuri (FPS) RE – CURS 5 Shell aplicație care permite accesul

SIS

TE

ME

DE

OP

ER

AR

E –

CU

RS

5

G l o b b i n g – c o n t i n u a r e

filename expansion (și altele)

diferit de expresii regulate (vezi în continuare)

* – orice caracter de oricâte ori

? – orice caracter

[abcde], [a-e] – set de caractere

[^abc] – diferit de setul de caractere

{jpg,png,bmp} – selecție între variante

Page 27: Lect. Univ. Dr. Mihai Stancu - inf.ucv.roinf.ucv.ro/documents/mihais/SO/SO-05.pdf · consola Matlab, AutoCAD consolă de jocuri (FPS) RE – CURS 5 Shell aplicație care permite accesul

SIS

TE

ME

DE

OP

ER

AR

E –

CU

RS

5

E x p r e s i i r e g u l a t e

Extrage liniile care încep cu șirul ana

alin@anaconda:/tmp/for$ grep '^ana' /etc/passwd

ana:x:1118:1026:Ana Musat:/home/students/ana:/bin/bash

Extrage liniile care conțin cu șirul ana

alin@anaconda:/tmp/for$ grep 'ana' /etc/passwd

list:x:38:38:Mailing List Manager:/var/list:/bin/sh

roxana:x:1004:1004:Roxana

Savu,,,:/home/users/roxana:/bin/bash

roxanam:x:1030:1026:Roxana

Moraru:/home/students/roxanam:/bin/bash

[...]

Listează fișierele ce conțin linii care conțin doar șirul #include <stdio.h>

alin@anaconda:/tmp/for$ grep -r '^#include <stdio\.h>$'

/usr/include

/usr/include/argp.h:#include <stdio.h>

/usr/include/mntent.h:#include <stdio.h>

/usr/include/printf.h:#include <stdio.h>

• grep - global regular expression print

Page 28: Lect. Univ. Dr. Mihai Stancu - inf.ucv.roinf.ucv.ro/documents/mihais/SO/SO-05.pdf · consola Matlab, AutoCAD consolă de jocuri (FPS) RE – CURS 5 Shell aplicație care permite accesul

SIS

TE

ME

DE

OP

ER

AR

E –

CU

RS

5

E x p r e s i i r e g u l a t e – c o n t i n u a r e

diferite de globbing

x* – caracterul x de oricâte ori (posibil niciodată)

x+ – caracterul x de oricâte ori (cel puțin o dată)

x? – caracterul x cel mult o dată

. (punct) – orice caracter

^ – început de rând

$ – sfârșit de rând

[a-z] – set de caractere

[^a-z] – set complementar de caractere

a|b – caracterul a sau b

Atenție: la grep unele trebuie escapate (\+, \|)

Page 29: Lect. Univ. Dr. Mihai Stancu - inf.ucv.roinf.ucv.ro/documents/mihais/SO/SO-05.pdf · consola Matlab, AutoCAD consolă de jocuri (FPS) RE – CURS 5 Shell aplicație care permite accesul

SIS

TE

ME

DE

OP

ER

AR

E –

CU

RS

5

E x e r c i t i i d e e x p r e s i i r e g u l a t e

1) expresie regulată pentru adrese MAC (0C:A3:11:CF:D1)

2) expresie regulată pentru subgrupă de student la

Informatică (212A, 223B)

3) expresie regulată pentru nume de variabile C

încep cu litere sau cu underscore

pot conține litere, underscore sau cifre

4) expresie regulată pentru nume valide Windows

nu încep cu spațiu sau punct

nu conțin \, /, *, ?, :, ", <, >, |

Page 30: Lect. Univ. Dr. Mihai Stancu - inf.ucv.roinf.ucv.ro/documents/mihais/SO/SO-05.pdf · consola Matlab, AutoCAD consolă de jocuri (FPS) RE – CURS 5 Shell aplicație care permite accesul

SIS

TE

ME

DE

OP

ER

AR

E –

CU

RS

5

U n i x P o w e r T o o l s

ediția a 3-a, 2002

enciclopedie a faciltăților Unix

1100 de pagini, 51 de capitole

pentru „power users” – utilizatori avansați care vor să

folosească la maxim sistemul

capitole excelente despre shell și shell scripting

Page 31: Lect. Univ. Dr. Mihai Stancu - inf.ucv.roinf.ucv.ro/documents/mihais/SO/SO-05.pdf · consola Matlab, AutoCAD consolă de jocuri (FPS) RE – CURS 5 Shell aplicație care permite accesul

SIS

TE

ME

DE

OP

ER

AR

E –

CU

RS

5

R o b P i k e

parte a echipei Unix

ulterior, dezvoltator la Plan 9 și

Inferno

sisteme de operare unde totul

este un fișer

pe Unix aproape totul este un

fișier

cărți și proiecte împreună cu Ken

Thompson, Brian Kernighan

UTF-8

lucrează la Google

Page 32: Lect. Univ. Dr. Mihai Stancu - inf.ucv.roinf.ucv.ro/documents/mihais/SO/SO-05.pdf · consola Matlab, AutoCAD consolă de jocuri (FPS) RE – CURS 5 Shell aplicație care permite accesul

SIS

TE

ME

DE

OP

ER

AR

E –

CU

RS

5

A m a z o n

Amazon.com, Inc.

comerț electronic (online retailer)

fondată în 1994, online în 1995

inițial librărie online

Amazon Kindle

în 2010, vânzările de e-books au depășit vânzările de cărți în

format printat

Amazon Web Services – servicii de stocare și rulare, cloud

computing

Amazon EC2 – închiriere de mașini virtuale

Amazon S3 – servicii de stocare

Page 33: Lect. Univ. Dr. Mihai Stancu - inf.ucv.roinf.ucv.ro/documents/mihais/SO/SO-05.pdf · consola Matlab, AutoCAD consolă de jocuri (FPS) RE – CURS 5 Shell aplicație care permite accesul

SIS

TE

ME

DE

OP

ER

AR

E –

CU

RS

5

W i n d o w s P o w e r S h e l l

CLI pentru Windows

rulează de la Windows XP SP2 în sus

integrare cu .NET framework

cmdlets, aplicații .NET

automatizare – scripting

pipeline de obiecte (objects), nu de șiruri de caractere ca în

Unix

Page 34: Lect. Univ. Dr. Mihai Stancu - inf.ucv.roinf.ucv.ro/documents/mihais/SO/SO-05.pdf · consola Matlab, AutoCAD consolă de jocuri (FPS) RE – CURS 5 Shell aplicație care permite accesul

SIS

TE

ME

DE

OP

ER

AR

E –

CU

RS

5

C u v i n t e c h e i e

interfață

CLI

shell

terminal

comandă, argumente

prompt

>, <, &, |, ||, &&, ;

command completion

", ', \, $

variabile

variabile de mediu

escaping

expandare

globbing

expresii regulate

grep

Page 35: Lect. Univ. Dr. Mihai Stancu - inf.ucv.roinf.ucv.ro/documents/mihais/SO/SO-05.pdf · consola Matlab, AutoCAD consolă de jocuri (FPS) RE – CURS 5 Shell aplicație care permite accesul

SIS

TE

ME

DE

OP

ER

AR

E –

CU

RS

5

R e s u r s e u t i l e

http://en.wikipedia.org/wiki/User_interface

http://www.gnu.org/software/bash/manual/bashref.html

http://mywiki.wooledge.org/BashFAQ

http://www.shelldorado.com/

http://www.pixelbeat.org/cmdline.html

http://www.regular-expressions.info/