Linux e la shell Bash

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Linux e la shell Bash"

Transcript

1 Parte II Gestione file e directory Link Redirezione I/O Concatenamento comandi Visualizzazione file Espressioni regolari Filtri e ricerche Gestione processi Testi di riferimento: La shell Bash A.A

2 Percorsi assoluti e relativi: PWD - TOUCH Mostra il percorso completo della directory di lavoro corrente. SINTASSI: pwd user@ubuntu:~/desktop$ pwd /home/user/desktop Cambia l'orario di accesso e/o modifica di ogni file specificato (di default entrambi), aggiornandolo all'orario corrente. Se il file non esiste, ne crea uno vuoto. SINTASSI: touch [-acm] file_esempio -a Cambia l'orario di accesso di file_esempio -c Non crea il file, aggiorna solo la data di ultimo accesso -m Cambia l'orario di modifica di file_esempio 2

3 CD Cambia la directory corrente in quella specificata. SINTASSI: cd [nome_directory] Directory Attuale: /home/user/desktop/shell_linux cd cd - cd. cd.. Se non si specifica la directory, la directory di lavoro diventerà la home-directory dell'utente loggato. Equivalente di: cd ~ /home/user/ La directory di lavoro diventerà quella precedentemente utilizzata, questa è memorizzata nella variabile d'ambiente OLDPWD. /home/user/desktop/shell_linux La directory di lavoro resterà quella corrente. /home/user/desktop/shell_linux La directory di lavoro diventerà quella padre di quella corrente. /home/user/desktop 3

4 LS Lista il contenuto della directory corrente o di quella specificata. SINTASSI: ls [-aflrtu] [percorso] user@ubuntu:~/desktop$ ls lirc mamas ns230 prova.txt prova.txt~ Reasoner shell_linux tlc -F Aggiunge ai nomi dei file un carattere che ne indica il tipo (* file eseguibili, / per i link simbolici, per i FIFO) user@ubuntu:~/desktop$ ls -F lirc/ mamas/ ns230/ prova.txt prova.txt~ Reasoner@ shell_linux/ tlc/ -r Inverte l'ordinamento alfabetico -t Ordina i file per data di ultima modifica -u Ordina i file per data di ultimo accesso -1 Mostra l'elenco in un unica colonna. -a Include nell'elenco anche i file che iniziano con. (punto), cioè file e directory nascoste 4

5 LS -l Mostra informazioni dettagliate sui file: [Access Control List] [numero di link al file] [utente] [gruppo][dimensione in byte] [ultimo accesso] [nome file] ls -l total 24 drwxr-xr-x 6 user user :25 lirc drwxr-xr-x 6 user user :06 mamas drwxr-xr-x 2 user user :47 ns230 -rw-r--r-- 1 user user :22 prova.txt -rw-r--r-- 1 user user :22 prova.txt~ lrwxrwxrwx 1 user user :11 Reasoner -> /home/user/ns2/ns-allinone-2.30/ns-2.30/reasoner drwxr-xr-x 2 user user :02 shell_linux drwxr-xr-x 5 user user :13 tlc 5

6 MKDIR - RMDIR Crea una nuova directory. SINTASSI: mkdir [-m permessi] [percorso] directory - v Verbose Mode: mostra sullo standard output le operazioni eseguite user@ubuntu:~/desktop$ mkdir prova -v mkdir: created directory `prova' Rimuove le directory specificate purché vuote. SINTASSI rmdir [--ignore-fail-on-non-empty] directory_1 [directory_n] --ignore-fail-on-non-empty -v Verbose mode. Non notifica l'errore in caso di fallimento. 6

7 CP - RM Copia i file/file-directory da un percorso di partenza ad uno di destinazione. SINTASSI: cp [-fiprv] percorso_partenza percorso_destinazione -f Forza la sovrascrittura di eventuali file di destinazione esistenti -i In caso di file di destinazione esistenti richiede conferma interattivamente Il percorso di destinazione può comprendere anche il nuovo nome del file/file-directory, in quest'ultimo caso si effettuerà contemporaneamente la copia e la rinomina del file/file-directory di partenza. Rimuove file/file-directory. SINTASSI: rm [-filrv] percorso -R Rimuove file e directory ricorsivamente, cioè proseguendo la rimozione delle eventuali subdirectory user@ubuntu:~/desktop$ rm prova rm: cannot remove `prova': Is a directory --> ERRORE Q2 7

8 MV Sposta i file o directory da un da un percorso di partenza ad uno di destinazione. SINTASSI: mv [-fiprv] percorso_partenza percorso_destinazione mv file1 file2 Rinomina file1 in file2. Se quest'ultimo esiste viene sovrascritto da file1 mv file1 directorya Sposta file1 dentro directorya mv directorya directoryb Sposta directorya in directoryb se quest'ultima esiste già, viceversa rinomina directorya in directoryb mv directorya file1 Operazione non consentita. Q3 8

9 FILE Determina il tipo di uno o più file. SINTASSI: file [-k] file_esempio user@ubuntu:~/desktop/shell_linux$ file esempio_uniq.txt esempio_uniq.txt: UTF-8 Unicode text user@ubuntu:~/desktop/shell_linux$ file./*./esempio_sort_num.txt: ASCII text./esempio_sort.txt: ASCII text./esempio_uniq.txt: UTF-8 Unicode text./file_esempio.txt: ASCII text 9

10 Link: LN Realizza i collegamenti tra file. Di default realizza un hard link. SINTASSI: ln [-sn] file_sorgente file_destinazione ln [-sn] directory_sorgente file_destinazione -n Non crea il link se file_destinazione esiste già -s Crea un collegamento simbolico a file_sorgente o a directory_sorgente con il nome file_destinazione. Un hard link è un puntatore all'inode di un file esistente, non viene creato un nuovo file ma solo un directory-entry (inode#, nome_file) nella directory contenente il nuovo collegamento. I due riferimenti sono totalmente equivalenti perché puntano allo stesso inode. Quando si crea un hard link, il link-count del file viene incrementato di 1, quindi il file esiste con nomi diversi. Un soft link è un collegamento che può riferirsi sia a file che a directory. Viene creato un nuovo file di testo che contiene semplicemente un percorso. Ogni volta che il sistema incontra un soft link sostituisce il suo contenuto con il percorso che lo individua. Quando viene rimosso un soft link, si elimina solo il file speciale e non il file a cui esso si riferisce. I due file (speciale e sorgente) hanno numero di inode (inode#) differente. 10

11 REDIREZIONE I/O Descrittori di file per l'input e l'output: 0 standard input 1 standard output 2 standard error n ciascun processo ha a disposizione 1024 descrittori di file Operatori di ridirezione: < Redirige lo standard input su un file qualunque file, equivalente a 0< > Redirige solo lo standard output su un file sovrascrivendone il contenuto, equivalente a 1> 2> Redirige solo lo standard error >> Redirige lo standard output su un file aggiungendo il contenuto in coda al file di ridirezione, append mode 2>> Redirige lo standard error su un file in append mode n> Redirige il descrittore n-esimo (n>> append mode) n>&m Concatena i due canali di comunicazione associati ai descrittori di file n ed m 11

12 REDIREZIONE I/O - Esempio user@ubuntu:~/desktop/shell_linux$ ls -l > stdout.txt stdout.txt total 16 -rw-r--r-- 1 user user :36 esempio_sort_num.txt -rw-r--rw- 1 user user :56 esempio_sort.txt -rw-r--r-- 1 user user :55 esempio_uniq.txt -rw-rw-r-- 1 user user :48 file_esempio.txt -rw-r--r-- 1 user user :22 stdout.txt Q1 12

13 CONCATENAMENTO COMANDI Il simbolo di pipe ( ) serve a redirigere lo standard output del comando a sinistra della pipe nello standard input del comando a destra della pipe. Se all'inizio nella pipeline c'è un punto esclamativo (!) il valore restituito corrisponde alla negazione logica del risultato normale. La shell attende che tutti i comandi della pipeline siano terminati prima di restituire un valore. SINTASSI: [!] comando1 [ comando2] I comandi separati da punto e virgola (;) sono eseguiti sequenzialmente. SINTASSI: comando1 ; comando2 L'operatore di controllo && si comporta come l'operatore booleano AND. Viene eseguito il comando a destra solo se il primo ha terminato con successo. SINTASSI: comando1 && comando2 L'operatore di controllo si comporta come l'operatore booleano OR. Viene eseguito il comando a destra solo se il primo non ha terminato con successo oppure non si è potuto eseguire. SINTASSI: comando1 comando2 13

14 ECHO - CAT Mostra una stringa sullo standard output. SINTASSI: echo [stringa] echo ~ echo testo >> file_prova Mostra il percorso della home-directory dell'utente loggato Inserisce la stringa parola_esempio in coda al file_prova Mostra sullo standard output il contenuto di uno o più file specificati. SINTASSI: cat [file] cat file1 cat file1 file2 > file3 Mostra sullo standard output il contenuto di file1. Genera file3 che è il risultato del concatenamento in sequenza di file1 e file2 14

15 Visualizzazione File: MORE - LESS Formatta il testo in pagine per facilitarne la lettura a video. Permetto solo uno scorrimento delle pagine in avanti. SINTASSI: more [file] Formatta il testo in pagine per facilitarne la lettura a video. SINTASSI: less [file] Rispetto a more permette una completa navigazione tra pagine e non richiede la lettura dell'intero documento prima dell'avvio. ls -l less Mostra mediate il paginatore less l'output del comando precedente 15

16 Filtri e ricerche: SORT Ordina o fonde insieme il contenuto dei file SINTASSI: sort [-cmbdfinr] [-o file] [file1 file2] user@ubuntu:~/desktop/shell linux$ cat esempio_sort.txt RIGA A RIGA D RIGA C RIGA B user@ubuntu:~/desktop/shell linux$ sort esempio_sort.txt RIGA A RIGA B RIGA C RIGA D 16

17 SORT - flag -c Controlla se i file indicati siano già ordinati. Se non lo sono viene emessa una segnalazione di errore e il programma mostra la prima riga che non rispetta l'ordine user@ubuntu:~/desktop/shell linux$ sort -c esempio_sort.txt sort: esempio_sort.txt:3: disorder: RIGA C RIGA A OK RIGA D OK RIGA C ERR RIGA B 17

18 SORT - flag -n Esegue un ordinamento numerico considerando anche il segno meno e il punto decimale Non ordinati Ordinati in base al testo Ordinamento numerico 18 user@ubuntu:~/desktop/shell linux$ cat esempio_sort_num.txt user@ubuntu:~/desktop/shell linux$ sort esempio_sort_num.txt user@ubuntu:~/desktop/shell linux$ sort -n esempio_sort_num.txt

19 SORT flag -m Fonde insieme i file indicati che devono essere già ordinati -b Ignora gli spazi vuoti iniziali -d Ignora tutti i caratteri che non siano lettere, numeri o spazi -f Non distingue tra lettere maiuscole e minuscole -i Ignora i caratteri speciali al di fuori del set ASCII puro -r Inverte l'ordine della comparazione -o file Invece di utilizzare lo standard output, utilizza il file indicato per inserire il risultato dell'operazione. Q4 19

20 GREP - Global Regular Expression Print Mostra le linee che corrispondono al modello ricercato. Si possono specificare uno o più file oppure è possibile usare lo standard input SINTASSI: grep [-GEFecnvlLi] modello [file_1 file_2] ESPRESSIONI REGOLARI 1) Un qualsiasi carattere è già un'espressione regolare (es. caratteri speciali) 2) Un carattere speciale può essere usato come carattere regolare anticipandolo con backslash (\) (es. * viene considerato asterisco con \*) 3) L'espressione regolare va racchiusa tra apici (es. grep 'expr'). 20

21 Regole sintattiche Classi di caratteri [:upper:] lettere maiuscole [:lower:] lettere minuscole [:alpha:] lettere alfabetiche [:digit:] cifre numeriche [:alnum:] caratteri alfanumerici [:punct:] Caratteri di punteggiatura [:space:] Caratteri definiti come «spazi bianchi» [:blank:] Comprende solo <space> e <tab> 21

22 Regole sintattiche. (punto) carattere qualsiasi [xwyz] [a-f] [^a-f] ^[a-f] [a-f]$ \<[a-f] [a-f]\> y{n,m} Set di caratteri qualsiasi all'interno delle parentesi quadre, i caratteri sono in OR tra di loro Un carattere qualsiasi tra a ed f, estremi inclusi Tutti i caratteri tranne quelli specificati Cerca il modello specificato all'inizio di ogni riga Cerca il modello specificato alla fine di ogni riga Cerca il modello specificato all'inizio di ogni parola Cerca il modello specificato alla fine di ogni parola Ripetizione del carattere da n a m volte. n ed m possono anche non essere definiti y* Ripetizione del carattere da 0 a più volte (Eq. a y{0,}) y? Al massimo una ripetizione (Eq. a y{0,1}) y+ Almeno una ripetizione (Eq. a y{1,}) [^a-f] è diverso da ^[a-f] 22

23 GREP flag -G Utilizza l'espressione regolare elementare (default) -E Utilizza l'espressione regolare estesa. Aggiunge ulteriori metacaratteri alla serie di base -F Utilizza un modello fatto di stringhe fisse -e Specifica il modello di ricerca -c Mostra il numero di righe in cui è presente il modello -n Aggiunge ad ogni riga contenente il modello il numero di tale riga nel file -v Selezione inversa: mostra tutte le righe tranne quelle contenenti il modello -l Mostra il percorso dei file in cui è presente il modello -L Selezione inversa: mostra il percorso di tutti i file in cui non è presente il modello -i Non distingue tra caratteri maiuscoli e minuscoli di modello 23

24 GREP - Esempi Mostra tutte le righe di file_esempio grep '.*' file_esempio 15 fifteen 14 fourteen 13 thirteen 12 twelve 11 eleven 10 ten 9 nine 8 eight 7 seven 6 six 5 five 4 four 3 three 2 two 1 one 1) grep '[24]' file_esempio.txt 14 fourteen 12 twelve 4 four 2 two Mostra tutte le righe di file_esempio contenenti i caratteri 2 oppure 4, indipendentemente dalla loro collocazione nella stringa. 2) grep 'ee.' file_esempio.txt grep 'e\{2\}.' file_esempio.txt grep -E 'e{2}.' file esempio.txt 15 fifteen 14 fourteen 13 thirteen Mostra le righe che contengono due e di seguito seguite da un carattere qualsiasi. 24

25 GREP - Esempi Mostra tutte le righe di file_esempio grep '.*' file_esempio 15 fifteen 14 fourteen 13 thirteen 12 twelve 11 eleven 10 ten 9 nine 8 eight 7 seven 6 six 5 five 4 four 3 three 2 two 1 one 3) grep '^1.*e$' file_esempio.txt 12 twelve 1 one Mostra le righe che: ^1 Iniziano con il carattere 1 e$ Terminano con il carattere e.* Presentano al loro interno zero o più caratteri 4) grep '\<f.*n\>' esempio_grep.txt 15 fifteen 14 fourteen Mostra le righe contenenti parole che: \<f Iniziano con il carattere f n\> Terminano con il carattere e.* Presentano al loro interno zero o più caratteri Q5 Q6 25

26 HEAD Mostra le prime righe o byte di un file, di default le prime 10 righe. SINTASSI: head [-cn] [file] -c X Mostra i primi X byte di un file -c -X Mostra i byte di un file esclusi gli ultimi X byte user@ubuntu:~/desktop/shell linux$ head -c 6 file_esempio.txt 15 fif 1 byte per carattere -n X Mostra le prime X righe di un file (equaivale a -X) -n -X Mostra le righe di un file escluse le ultime X user@ubuntu:~/desktop/shell linux$ head -n 3 file_esempio.txt 15 fifteen 14 fourteen 13 thirteen Q7 Q8 26

27 TAIL Mostra le ultime righe o byte di un file, di default le prime 10 righe. SINTASSI: tail [-cn] [file] -c X Mostra gli ultimi X byte di un file -c +X Mostra gli ultimi byte di un file a partire dal byte X user@ubuntu:~/desktop/shell linux$ tail -c 3 file_esempio.txt ne L ultimo byte è EOF -n X Mostra le ultime X righe di un file (equivale a -X) -n +X Mostra le ultime righe di un file a partire dalla riga X user@ubuntu:~/desktop/shell linux$ tail -n 3 file_esempio.txt 3 three 2 two 1 one Q9 Q11 Q12 27

28 UNIQ Mostra od omette le linee ripetute. Se non è specificato nessun flag visualizza tutte le righe senza ripeterle. SINTASSI: uniq [-cdfisuw] [file_esempio] linux$ cat esempio_uniq.txt Questa riga è presente una sola volta. Questa riga è presente due volte. Questa riga è presente due volte. Questa riga è presente tre volte. Questa riga è presente tre volte. Questa riga è presente tre volte. linux$ uniq esempio_uniq.txt Questa riga è presente una sola volta. Questa riga è presente due volte. Questa riga è presente tre volte. 28

29 UNIQ - flag -d Mostra solo le linee duplicate user@ubuntu:~/desktop/shell linux$ uniq -d esempio_uniq.txt Questa riga è presente due volte. Questa riga è presente tre volte. -u Mostra solo le linee uniche non duplicate user@ubuntu:~/desktop/shell linux$ uniq -u esempio_uniq.txt Questa riga è presente una sola volta. -c Per ogni riga indica il numero di occorrenze user@ubuntu:~/desktop/shell linux$ uniq -c esempio_uniq.txt 1 Questa riga è presente una sola volta. 2 Questa riga è presente due volte. 3 Questa riga è presente tre volte. 29

30 UNIQ flag -f N Salta il confronto delle prime N parole -i Nel confronto ignora la differenza tra lettere maiuscole e minuscole -s N Salta il confronto dei primi N caratteri -w N Confronta non più di N caratteri per riga. 30

31 WC Word Count Conta e mostra righe, parole, caratteri e byte per ogni file. Di default conta righe, parole e byte. SINTASSI: wc [-cmlw] [file_esempio] user@ubuntu:~/desktop/shell linux$ cat esempio_uniq.txt Questa riga è presente una sola volta. Questa riga è presente due volte. Questa riga è presente due volte. Questa riga è presente tre volte. Questa riga è presente tre volte. Questa riga è presente tre volte. user@ubuntu:~/desktop/shell linux$ wc -w -l -m -c esempio_uniq.txt esempio_uniq.txt Formato risposta: [righe] [parole] [caratteri] [byte] nome_file Q10 31

32 FIND Cerca dei file nella directory specificata e relative subdirectory. SINTASSI: find [-HLP] [percorso] [-name 'modello'] [-user utente_1] [-group gruppo_a] [-perm +-permessi] [-max(min)depth X] [-mount] [-[mac]time n] [-[mac]min n] [-[nac]ewer file] [-empty] [-links n] [-inum n] [-size n[bckmg]] -name modello -iname modello -user utente_1 -group gruppo_a -maxdepth X -mindepth X -[mac]time n -[mac]min n -empty -size n[bckmg] Restituisce i file aventi nel nome la stringa modello. Come -name ma non distingue maiuscole e minuscole in modello. Cerca i file in percorso aventi come utente proprietario utente_1 Cerca i file in percorso aventi come gruppo proprietario gruppo_a Prosegue la ricerca massimo fino al livello X, con X intero non negativo Prosegue la ricerca a partire dal livello X Trova i file o directory la cui data di modifica (mtime), accesso (atime) o creazione (ctime) corrisponde a n giorni fa Come l'opzione precedente ma n corrisponde a minuti Solo file e directory non vuoti File che usano al massimo n unità di spazio 32

33 FIND - flag (644) -rw-r--r-- esempio_sort_num.txt (646) -rw-r--rw- esempio_sort.txt (644) -rw-r--r-- esempio_uniq.txt (664) -rw-rw-r-- file_esempio.txt user@ubuntu:~/desktop/shell linux$ find -perm 644./esempio_uniq.txt./esempio_sort_num.txt Restituisce i file che hanno esattamente i permessi specificati, in modo ottale o simbolico user@ubuntu:~/desktop/shell linux$ find -perm -242./esempio_sort.txt Restituisce i file che hanno almeno i permessi specificati, in modo ottale o simbolico user@ubuntu:~/desktop/shell linux$ find -perm +022./esempio_sort.txt./file_esempio.txt Restituisce i file che hanno alcuni i permessi specificati, in modo ottale o simbolico. Almeno uno tra quelli indicati. 33

34 SED Esegue modifiche sui dati ricevuti dallo standard input, lavorando con stringhe di qualsiasi lunghezza. SINTASSI: sed [-n] [-e script] [file] -n Il normale output non viene mostrato -e Viene usata l'espressione script per elaborare il testo. sed -e '/regexp/d' file sed -e n,md' file sed n -e '/regexp/p' file Elimina (d) tutte le righe corrispondenti all'espressione regolare regexp Elimina (d) le righe dalla n alla m incluse. Visualizza (p) solo le righe corrispondenti all'espressione regolare regexp (-n). sed -e 's/stringa1/stringa2/g' file Sostituisce (s) ogni occorrenza di stringa1 con stringa2. Se g non è presente viene sostituita sola la prima occorrenza di ogni riga. 34

35 CUT Permette di estrarre sezioni di una riga di testo, delimitate da un carattere separatore. SINTASSI: cut -d separatore -f sottoinsieme -d separatore indica il carattere/stringa separatore -f intervallo indica gli intervalli delle porzioni della riga cut d ; file -f 1,3,5-9 Considera ogni riga composta da più stringhe separate dal separatore due punti (;) e ne visualizza solo prima, terza e dalla quinta alla nona (estremi inclusi). 35

36 DIFF Trova differenze tra due file. Questo comando risulta molto utile per confrontare file di configurazione. Se si sostituisce a uno dei file da confrontare il trattino (-) questo indica che il confronto verrà eseguito con lo standard input. SINTASSI: diff [-bbr] [--brief] [--ignore-case] da_file1 a_file2 -b Ignora differenze nella quantità di spazi bianchi -B Ignora differenze che consistono solo in righe vuote --brief Riferisce solo se i file sono diversi, senza mostrarne le differenze -r Confrontando due directory, confronta ogni sottodirectory ricorsivamente --ignore-case Considera allo stesso modo maiuscole e minuscole, ignorando ogni relativa differenza colordiff: Il comando ha le stesse opzioni ed effetti di diff ma mostrare un output colorato che permette una maggiore leggibilità 36

37 GESTIONE DEI PROCESSI Un processo eseguito in foreground interagisce in maniera diretta con l'utente (browser, editor di testo). Un processo in background è invece un processo che non interagisce direttamente con l'utente e tipicamente fornisce un servizio non direttamente visibile all'utente (servizio di sistema, demone). Per eseguire un comando (o una pipeline) in background da shell si aggiunge il carattere e-commerciale & alla fine della linea comando. Quando viene lanciata una pipeline in background vengono mostrati il numero di job e il PID dell'ultimo processo della pipeline. user@ubuntu:~/desktop/shell_linux$ sleep 5& [1] user@ubuntu:~/desktop/shell_linux$ ps PID TTY TIME CMD 6690 pts/0 00:00:00 bash pts/0 00:00:00 sleep pts/0 00:00:00 ps 37

38 YES FG BG Stampa il carattere y, o la stringa specificata indefinitamente sullo standard output, finché non viene terminato. SINTASSI: yes [stringa] La sequenza CTRL-Z ferma l'esecuzione del comando o di tutti i processi della pipeline restituendo il controllo alla shell, il job in questione viene messo in background. Premendo invece CTRL-C viene terminato il comando o la pipeline attualmente in esecuzione. Porta in foreground un job che prima era in background. Se non viene specificato il job su cui agire si intende quello attuale, ossia l'ultimo referenziato. SINTASSI: fg [num_job] Permette di far riprendere in background l'esecuzione di un job sospeso, se il job in questione non è in attesa di un input o di poter emettere l'output. SINTASSI: bg [num_job] 38

39 SLEEP - WAIT Sospende la shell per i secondi specificati. SINTASSI: sleep num_secondi Sospende l'esecuzione del processo chiamante sino a quando uno dei suoi figli termina. SINTASSI: wait [PID] L'interprete standard di comandi, permette quindi di eseguire comandi letti da una stringa a riga di comando (-c), dallo standard input (-s) o da un file specificato. SINTASSI: sh -c stringa_comando sh -s sh file_script 39

40 JOBS Mostra lo stato dei job avviati nella sessione corrente. In maniera informale un jobs è definibile come un'attività derivata da un comando dato attraverso una shell. SINTASSI: jobs [-lp] sleep 15& [1] jobs [1]+ Running sleep 15 & -l Visualizzazione estesa delle informazioni di ogni processo di stato jobs -l [1] Running sleep 15 & -p Mostra solo il PID del processo leader del job selezionato jobs -p

41 PS Mostra i processi attivi al momento. SINTASSI: ps [-rxeaf] [f] [-u lista_user] [-p lista_pid] [-t lista_tty] -u [lista_utenti] Solo i processi relativi agli utenti in lista_utenti, se non specificato all'utente corrente. -r Restringe la selezione solo ai processi in esecuzione -f Visualizzazione estesa -p [lista_pid] Solo le informazioni relative ai PID specificati ps ax Visualizza in processi utilizzando la notazione BSD user@ubuntu:~$ ps ax head n 10 PID TTY STAT TIME COMMAND 1? Ss 0:02 /sbin/init 2? S< 0:00 [kthreadd] 3? S< 0:00 [migration/0] 4? S< 0:03 [ksoftirqd/0] 5? S< 0:00 [watchdog/0] 6? S< 0:00 [events/0] 7? S< 0:00 [khelper] 46? S< 0:00 [kintegrityd/0] 48? S< 4:46 [kblockd/0] STAT = Codici dello stato dei processi R Running D Sleep non interromp. S Sleep interromp. < - Alta Priorità. 41

42 TOP Mostra dinamicamente (in foreground), ad intervalli regolari, una serie di informazioni sui processi e sul sistema. SINTASSI: top user@ubuntu:~$ top top - 12:31:19 up 7:12, 2 users, load average: 1.64, 1.45, 1.36 Tasks: 116 total, 4 running, 112 sleeping, 0 stopped, 0 zombie Cpu(s): 2.7%us, 1.7%sy, 0.0%ni, 33.2%id, 62.5%wa, 0.0%hi, 0.0%si, 0.0%st Mem: k total, k used, 21248k free, k buffers Swap: 0k total, 0k used, 0k free, k cached PARTE SUPERIORE Informazioni generali sul sistema PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 1983 root D :26.33 kjournald 6059 root m 7376 S :29.96 Xorg 48 root S :00.52 kblockd/ mythtv D :13.02 mythbackend 6541 user m 8428 S :01.26 gnome-settings user m 10m S :39.56 vmware-user-loa user m 25m 12m R :07.76 gnome-terminal 4974 root R :28.42 vmtoolsd 5492 mysql m 17m 5188 S :00.04 mysqld 1 root S :02.00 init 2 root S :00.00 kthreadd 3 root RT S :00.00 migration/0 4 root S :03.76 ksoftirqd/0 5 root RT S :00.00 watchdog/0 6 root R :00.62 events/0 TABELLA CENTRALE mostra i processi che usano maggiormente la CPU 42

43 KILL Il comando kill permette di inviare un segnale ai processi di un job, indicando direttamente il PID del processo. SINTASSI: kill [-s nome_segnale] [-nome_segn] [-num_segn] num_pid 1 SIGHUP Indica la caduta della "portante" della linea telefonica. 2 SIGINT Questo segnale è inviato ai processi per interromperli. 3 SIGQUIT Indica, come il precedente, la richiesta di terminazione del processo a cui è diretto, ma genera anche un'immagine di memoria del processo in esecuzione al momento della ricezione del segnale 9 SIGKILL Questo segnale provoca la conclusione forzata ed immediata del processo dal kernel Linux. 15 SIGTERM Questo segnale è inviato ai processi per concluderli. E' il segnale che si invia premendo CTRL-C. (default) 30 SIGPWR È il segnale che viene inviato a tutti i processi attivi nel caso in cui si verifichi una caduta di tensione. 43

44 KILLALL Si comporta esattamente come il comando kill ma non riceve come argomento uno o più PID. Come il comando kill, se non è specificato nessun segnale di default esso è SIGTERM (15). SINTASSI: killall [-ui] [-nome_segn] [-num_segn] [nome_proc] -u [utente] Manda il segnale di terminazione a tutti i processi relativi all'utente specificato. -i Chiede conferma prima di inviare il segnale, processo per processo. killall gdm Termina tutti i processi della sessione grafica, questi infatti sono tutti figli del processo gdm. 44

45 Esercizi Q1) Supponendo di trovarsi in una working directory qualsiasi, scrivere il comando per poter listare il contenuto della home directory (compresi i file nascosti), redirezionando l output nel file output.out ls -a ~/ > output.out Q2) Si supponga che la current working directory sia ~/dir1. Descrivere come copiare il file ~/dir1/myfile nella home directory, evitando di sovrascrivere un file esistente. cp -i./myfile../ Equivalente a: cp -i./myfile ~/ cp -i ~/dir1/myfile ~/ 45

46 Esercizi Q3) Sia assegnato il seguente albero di directory e si supponga di avere i privilegi di superutente: var/ www/ html/ var/ www/ prova/ / etc/ passwd (file) default/ / etc/ passwd (file) default/ passwd(file) shadow (file) html/ shadow (file) Dire come l albero risulta modificato dopo la seguente sequenza di comandi: cd /etc/default ci posizioniamo nella cartella /etc/default cp../pa*./ copia il file passwd nella directory corrente /etc/default cd /var/www ci posizioniamo nella cartella /var/www mv./html / sposta la cartella html in root / touch./html cambia l'orario di accesso e/o modifica mkdir prova crea la cartella prova nella directory corrente /var/www cd ci posizioniamo nella cartella precedente /etc/default pwd visualizza la working directory 46

47 Esercizi Q4) Scrivere il comando UNIX per visualizzare in ordine alfabetico i file contenuti nella directory corrente e produrre il risultato nel file di nome filea nella root directory. ls sort > /filea Q5) Si dica quale genere di output produce il comando seguente: $grep E ^.*\<7[3-9]./prova? La grep viene eseguita sul contenuto dei file aventi come nome prova seguito da un carattere qualsiasi (ES: prova1, prova2, provaa, ). -E indica che il comando grep è utilizza espressioni regolari estese ^.* indica che le righe da selezionare possono iniziare con una qualsiasi sequenza di caratteri \<7[3-9] indica che nella riga deve essere presente una parola che inizi con 7 seguito da un carattere tra 3 e 9 (ES: 73, 74, 79) 47

48 Esercizi Q6) Spiegare quale è l effetto del seguente comando: $ls -af1 grep \<. ls -af1 visualizza i file presenti nella directory corrente compresi i file nascosti (-a), aggiungendo a ciascun file un carattere chee ne indica il tipo (-F) mostrando il tutto in una singola colonna (-1) grep \<. Seleziona i file che presentino delle parole che inizino con un carattere qualsiasi. Seleziona quindi tutti i file ottenuti con il comando precedente Q7) Scrivere una pipe di comandi che consenta di estrarre da un file di testo di nome filea le prime X linee e di ordinarle in ordine alfabetico decrescente. head n X filea sort r Q8) Scrivere una sequenza di comandi che consenta di ordinare in ordine alfabetico il contenuto di un file di nome gianni e di estrarre dal file ordinato le prime X linee scrivendole in appendice sul file gianni2 nella home directory dell utente loggato. sort gianni head n X >> ~/gianni2 48

49 Esercizi Q9) Il file di testo text.txt contiene le seguenti parole: casa cane cane cane gatto tail -n +2 gatto grep a gatto volpe volpe Indicare l output del seguente comando $ tail -n +2 text.txt grep a sort -r gatto cane Q10) Dati due file, uno di nome filea costituito da X linee di testo e uno di nome fileb costituito da Y linee di testo, indicare l output del comando (cat filea fileb) wc l Cat concatena i due file mentre wc visualizza il n di linee complessive, quindi l output sarà rappresentato dal valore X+Y 49

50 Esercizi Q11) Qual è leffetto del comando: cat risultati tail -5 grep ^.*\<[m-z].*$ 2> risultati se il file risultati è così fatto: mario rossi 12/07/ Ammesso paolo paoli 15/09/ Non Ammesso rocco verdi 12/02/ Ammesso marco rossi 24/06/ Ammesso sergio bianchi 02/07/ Ammesso fabio giallo 03/05/ Ammesso rosa barbieri 17/03/ Ammesso Non essendoci errori durante l esecuzione del comando non saranno inviati messaggi sullo standard error e quindi il file risultati sarà vuoto. Q12) Qual è l effetto del comando: cat elenco.promossi head -6 grep \<2[29].*$ -v &> output mario rossi 12/07/ Ammesso mario rossi 12/07/ Ammesso paolo paoli 15/09/ Non Ammesso paolo paoli 15/09/ Non Ammesso rocco verdi 12/02/ Ammesso marco rossi 24/06/ Ammesso marco rossi 24/06/ Ammesso sergio bianchi 02/07/ Ammesso sergio bianchi 02/07/ Ammesso fabio giallo 03/05/ Ammesso fabio giallo 03/05/ Ammesso rosa barbieri 17/03/ Ammesso 50

Linux - La Shell Bash

Linux - La Shell Bash DEI DEI -- Politecnico di di Bari Bari Linux - La Shell Bash Espressioni regolari Comandi: grep, find, sed Filtri Esercizi Controllo dei processi Comandi: yes, bg, fg, sleep, wait, sh, jobs, ps, top, kill,

Dettagli

Linux - La Shell Bash

Linux - La Shell Bash DEI DEI -- Politecnico di di Bari Bari Linux - La Shell Bash I link Hard link e soft link Il comando ln Redirezione dell I/O Concatenamento di comandi: la pipeline Visualizzazione ed diting di file Filtri

Dettagli

Linux e la shell Bash

Linux e la shell Bash Fondamenti di Sistemi Operativi Linux e la shell Bash I link Hard link e soft link Il comando ln Redirezione dell I/O Concatenamento di comandi: la pipeline Visualizzazione ed editing di file I comandi:

Dettagli

Linux e la shell Bash

Linux e la shell Bash DEI DEI-- Politecnico di dibari Linux e la shell Bash Esercitazione conclusiva G. Piscitelli - M. Ruta - A. Cinquepalmi Testi di riferimento: Linux e la shell Bash http://sisinflab.poliba.it/ruta/linux/linux

Dettagli

La Shell: esecuzione dei comandi

La Shell: esecuzione dei comandi La Shell: esecuzione dei comandi Shell Unix - Linux comandi La shell, utilizzando i servizi del kernel, crea un nuovo processo che esegue il comando, provvedendo a "passargli" in modo opportuno gli eventuali

Dettagli

Ulteriori comandi sui file

Ulteriori comandi sui file Ulteriori comandi sui file Confronto tra file: 1. > cmp file1 file2 restituisce il primo byte ed il numero di linea in cui file1 e file2 differiscono (se sono uguali, non viene stampato nulla a video).

Dettagli

Laboratorio di sistemi operativi A.A. 2010/2011 Gruppo 2 Gennaro Oliva Processi

Laboratorio di sistemi operativi A.A. 2010/2011 Gruppo 2 Gennaro Oliva Processi Laboratorio di sistemi operativi A.A. 2010/2011 Gruppo 2 Gennaro Oliva Processi Processo L'istanza di un programma in esecuzione in ambiente UNIX viene detta processo Ogni programma può generare diversi

Dettagli

- comando sort: con chiavi di ordinamento -

- comando sort: con chiavi di ordinamento - - comando sort: con chiavi di ordinamento - 1 - sort: chiavi di ordinamento - Tramite l'opzione -k è possibile definire una chiave di ordinamento su una porzione della linea contenuta nel file Specificando

Dettagli

La Shell di Unix. l utente impartisce i comandi al sistema digitandoli ad un apposito prompt;

La Shell di Unix. l utente impartisce i comandi al sistema digitandoli ad un apposito prompt; La Shell di Unix La parte del sistema operativo Unix dedita alla gestione dell interazione con l utente è la shell, ovvero, un interfaccia a carattere: l utente impartisce i comandi al sistema digitandoli

Dettagli

Shell BASH. Variabili Redirezione

Shell BASH. Variabili Redirezione Shell BASH Variabili Redirezione Variabili Scrittura/definizione: a=3 (senza spazi) Lettura: ${a} o semplicemente $a Esempi: > a=3 > echo $a 3 > echo $aa > echo ${a}a 3a > a=ciao pippo bash: pippo: command

Dettagli

Lezione 2: Comandi avanzati della Shell di Unix

Lezione 2: Comandi avanzati della Shell di Unix Lezione 2: Comandi avanzati della Shell di Unix Laboratorio di Elementi di Architettura e Sistemi Operativi 6 Marzo 2013 Parte 1: Metacaratteri, link e file speciali I metacaratteri La shell riconosce

Dettagli

Introduzione. P4 termina prima di P3, P2 e P3 prima di P1 P1 P2 P3 P4 P1 P1 P2 P3 P4. Padre. P1,..., P4 sono processi. Figlio

Introduzione. P4 termina prima di P3, P2 e P3 prima di P1 P1 P2 P3 P4 P1 P1 P2 P3 P4. Padre. P1,..., P4 sono processi. Figlio Processi Introduzione Processo = entità attiva 1. esiste per un certo lasso di tempo 2. utilizza risorse Ogni processo ha un identificatore intero (PID: process identifier) Tutti i processi UNIX hanno

Dettagli

Comandi Unix. Introduzione. G. Lettieri May 24, Negli esempi seguenti, si suppone che la directory corrente contenga i file:

Comandi Unix. Introduzione. G. Lettieri May 24, Negli esempi seguenti, si suppone che la directory corrente contenga i file: Comandi Unix G. Lettieri May 24, 2005 Introduzione Negli esempi seguenti, si suppone che la directory corrente contenga i file: filea fileb filec filed filea Il cui contenuto è il seguente: aa b fileb

Dettagli

Linux - La Shell Bash

Linux - La Shell Bash DEI DEI -- Politecnico di di Bari Bari Linux - La Shell Bash Gestione file e directory Directory di sistema Percorsi relativi e assoluti I comandi: pwd, ls, cd, cp, rm, mv, mkdir, rmdir, stat, touch Esercizi

Dettagli

Processi. Introduzione. Effective user/group id. Fork

Processi. Introduzione. Effective user/group id. Fork Introduzione Processi = entità attiva 1. esiste per un certo lasso di tempo 2. utilizza risorse Ogni processo ha un identificatore intero (PID: process identifier) Tutti i processi UNIX hanno un genitore

Dettagli

Linux e la shell Bash

Linux e la shell Bash DEI DEI-- Politecnico di dibari Linux e la shell Bash Gestione file e directory Directory di sistema Percorsi relativi e assoluti I comandi: pwd, touch, cd, ls, mkdir, rmdir, cp, rm, mv, file, stat Esercizi

Dettagli

Lab. di Sistemi Operativi - Esercitazione - Comandi Shell

Lab. di Sistemi Operativi - Esercitazione - Comandi Shell Lab. di Sistemi Operativi - Esercitazione - Comandi Shell 1 - Esercizi Comandi Unix - 2 Esercizio n 0 0a) creare una cartella EsercitazioneLSO-1 nella directory di lavoro 0b) creare un file testo chiamato

Dettagli

SHELL: File e Filesystem

SHELL: File e Filesystem SHELL: File e Filesystem Obiettivi : - Usare i comandi per muoversi all'interno del filesystem - Copiare, spostare, rinominare file e directory - Usare i link - Visualizzare il contenuto di un file - Conoscere

Dettagli

Senza Soluzioni. Può un altro utente non appartenente al gruppo di mgiorgio, eseguire gli stessi comandi?

Senza Soluzioni. Può un altro utente non appartenente al gruppo di mgiorgio, eseguire gli stessi comandi? Senza Soluzioni Scrivere i due seguenti semplici script in bash shell: a. (1.5pt.)uno script che cancella un file dando il suo inode. Lo script e' attivato cosi': irm b. (1.5pt.)uno script che

Dettagli

Shell: variabili di sistema. Per visualizzare il valore di tutte le variabili d ambiente si usa il comando set

Shell: variabili di sistema. Per visualizzare il valore di tutte le variabili d ambiente si usa il comando set PATH Shell: variabili di sistema HOME USER PWD SHELL HOSTNAME HOSTTYPE Per visualizzare il valore di tutte le variabili d ambiente si usa il comando set Shell: variabili di sistema Per visualizzare il

Dettagli

Il sistema operativo LINUX La shell

Il sistema operativo LINUX La shell Il sistema operativo LINUX La shell Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica Sistemi Operativi - Shell 1 La shell

Dettagli

L ambiente UNIX/Linux. I filtri Stefano Quer Dipartimento di Automatica e Informatica Politecnico di Torino

L ambiente UNIX/Linux. I filtri Stefano Quer Dipartimento di Automatica e Informatica Politecnico di Torino L ambiente UNIX/Linux I filtri Stefano Quer Dipartimento di Automatica e Informatica Politecnico di Torino 2 Filtri In UNIX/Linux un filtro è un comando che Riceve il proprio input da standard input Lo

Dettagli

Lab. di Sistemi Operativi - Esercitazione n 2 - a.a. 2012/2013

Lab. di Sistemi Operativi - Esercitazione n 2 - a.a. 2012/2013 Lab. di Sistemi Operativi - Esercitazione n 2 - a.a. 2012/2013 Comandi di ricerca 1 Sommario Comandi shell di ricerca: grep find 2 - comando di ricerca: grep - 3 file passwd, ricordiamo che Le righe di

Dettagli

GLUG Govonis. Corso Avanzato GNU / Linux. Lezione del 02.01.2012. Shell

GLUG Govonis. Corso Avanzato GNU / Linux. Lezione del 02.01.2012. Shell GLUG Govonis Corso Avanzato GNU / Linux Lezione del 02.01.2012 Shell GLUG Govonis Di cosa parleremo? GLUG Govonis lavorare con la linea di comando GLUG Govonis lavorare con la linea di comando i comandi

Dettagli

Bash: history list (I)

Bash: history list (I) Bash: history list (I) L history list è un tool fornito dalla shell bash che consente di evitare all utente di digitare più volte gli stessi comandi: bash memorizza nell history list gli ultimi 500 comandi

Dettagli

BREVISSIMA GUIDA AL SISTEMA UNIX / LINUX

BREVISSIMA GUIDA AL SISTEMA UNIX / LINUX BREVISSIMA GUIDA AL SISTEMA UNIX / LINUX 1. DEFINIZIONI sistema operativo (SO): Software che gestisce le risorse del computer (filesystem e periferiche) filesystem: Insieme dei supporti di memorizzazione.

Dettagli

Esercitazione GNU/Linux n. 2

Esercitazione GNU/Linux n. 2 2.1 Copiare i file cp (copy) Esercitazione GNU/Linux n. 2 cp file1 file2 è il comando che crea una copia del file1 presente nella directory corrente e la chiama file2 Ciò che faremo adesso, è prendere

Dettagli

Il filesystem di Unix/Linux (I)

Il filesystem di Unix/Linux (I) Il filesystem di Unix/Linux (I) Comunemente, in un elaboratore l informazione è memorizzata in modo permanente nei dischi fissi. Ogni disco fisso può essere suddiviso in partizioni. Ogni partizione può

Dettagli

Lab. di Sistemi Operativi

Lab. di Sistemi Operativi Lab. di Sistemi Operativi Esercitazioni proposte per la lezione del 9 marzo 2012 Utilizzando la shell di Linux e disponendosi in gruppi di due persone per ogni PC del laboratorio. 1. Elencare i file nella

Dettagli

Lezione 3: Programmazione della Shell di Unix

Lezione 3: Programmazione della Shell di Unix Lezione 3: Programmazione della Shell di Unix Laboratorio di Elementi di Architettura e Sistemi Operativi 2 Marzo 202 Parte : Soluzione degli esercizi Statistiche Ho ricevuto 2 soluzioni Tutte le soluzioni

Dettagli

Manipolazioni elementari di flussi di testo strutturati

Manipolazioni elementari di flussi di testo strutturati Manipolazioni elementari di flussi di testo strutturati L output di molti comandi è costituito da flussi di testo strutturati: ogni riga rappresenta una parte del risultato ed è divisa in campi (fields)

Dettagli

Lezione 1: Introduzione alla Shell di Unix

Lezione 1: Introduzione alla Shell di Unix Lezione 1: Introduzione alla Shell di Unix Laboratorio di Elementi di Architettura e Sistemi Operativi 5 Marzo 2013 Chi è UNIX? UNIX è il nome di una famiglia di sistemi operativi, con diverse implementazioni

Dettagli

Gestione avanzata dei file

Gestione avanzata dei file Gestione avanzata dei file Espressioni jolly * qualunque insieme di caratteri? un solo carattere qualunque ^ nega l'espressione seguente [ ] carattere singolo in un range di caratteri possibili [a-c] le

Dettagli

E' un interprete di comandi: legge ciascuna linea di comando, la interpreta e la esegue

E' un interprete di comandi: legge ciascuna linea di comando, la interpreta e la esegue Shell Cos'e'? Interfaccia (testuale) tramite la quale l'utente interagisce con il sistema E' un interprete di comandi: legge ciascuna linea di comando, la interpreta e la esegue Ogni shell fornisce un

Dettagli

Lab. di Sistemi Operativi - Lezione in aula - a.a. 2012/2013

Lab. di Sistemi Operativi - Lezione in aula - a.a. 2012/2013 Lab. di Sistemi Operativi - Lezione in aula - a.a. 2012/2013 Espressioni Regolari 1 Sommario Metacaratteri Quoting Comandi di filtro: grep Espressioni Regolari (E.R.): I caratteri grep con E.R. 2 - Metacaratteri

Dettagli

Codice Corso: UNX010. Durata: 3 giorni

Codice Corso: UNX010. Durata: 3 giorni Codice Corso: UNX010 Durata: 3 giorni Obiettivi: In questo corso si imparano i comandi, la terminologia, la struttura del file system, delle directory e dei processi, e gli aspetti di base dell'architettura

Dettagli

L ambiente UNIX/Linux. Espressioni regolari e comando find Stefano Quer Dipartimento di Automatica e Informatica Politecnico di Torino

L ambiente UNIX/Linux. Espressioni regolari e comando find Stefano Quer Dipartimento di Automatica e Informatica Politecnico di Torino L ambiente UNIX/Linux Espressioni regolari e comando find Stefano Quer Dipartimento di Automatica e Informatica Politecnico di Torino 2 Espressioni regolari Nate nel 1956 a opera del matematico Stephen

Dettagli

ORGANIZZAZIONE del FILE SYSTEM SISTEMA OPERATIVO UNIX FILE SYSTEM. FILE astrazione unificante del sistema operativo

ORGANIZZAZIONE del FILE SYSTEM SISTEMA OPERATIVO UNIX FILE SYSTEM. FILE astrazione unificante del sistema operativo FILE SYSTEM SISTEMA OPERATIVO UNIX - FILE COME SEQUENZA DI BYTE NON sono pensate organizzazioni logiche o accessi a record - FILE SYSTEM gerarchico ALBERO di sottodirettori - OMOGENEITÀ dispositivi e file

Dettagli

File System I parte. File System

File System I parte. File System File System I parte File System Dati e Programmi sono organizzati mediante una struttura di files e directories: file: collezione di dati directory: collezione di file o di directory Il file system possiede

Dettagli

Uso del terminale in ambiente UNIX

Uso del terminale in ambiente UNIX Uso del terminale in ambiente UNIX Non sempre è disponibile un interfaccia grafica sui computer su cui si lavora In questo caso l interazione con il calcolatore avviene attraverso l interfaccia a riga

Dettagli

File System e Interprete Comandi

File System e Interprete Comandi File System e Interprete Comandi Marco Alberti Programmazione e Laboratorio, A.A. 2016-2017 Dipartimento di Matematica e Informatica - Università di Ferrara Ultima modifica: 29 settembre 2016 Sommario

Dettagli

LINUX - *** KIT DI MINIMA SOPRAVVIVENZA *** - UNIX - v0.05 -

LINUX - *** KIT DI MINIMA SOPRAVVIVENZA *** - UNIX - v0.05 - LINUX - *** KIT DI MINIMA SOPRAVVIVENZA *** - UNIX - v0.05 - Created by GT, 28/10/2002 l.r. bycg, 14/11/2005 1 - INFORMAZIONE SUI FILES ls : lista i files presenti nel direttorio dove ci si trova, in ordine

Dettagli

L interfaccia command line di Ubuntu è il Terminale che usa un sistema command line detto bash.

L interfaccia command line di Ubuntu è il Terminale che usa un sistema command line detto bash. BASH La maggior parte del lavoro di un bioinformatico si svolge attraverso un interfaccia command line che al contrario dell interfaccia grafica che usiamo ogni giorno, ha bisogno di comandi di testo esatti.

Dettagli

Corso di Laboratorio di Sistemi Operativi A.A Fabio Buttussi

Corso di Laboratorio di Sistemi Operativi A.A Fabio Buttussi Corso di Laboratorio di Sistemi Operativi A.A. 2010-2011 - Fabio Buttussi Informazioni generali Orario: Martedì dalle 10:30 alle 12:15 e giovedì dalle 14.30 alle 16.15. Docente: Fabio Buttussi Home page

Dettagli

Comandi principali di Linux (1)

Comandi principali di Linux (1) Laboratorio I Comandi principali di Linux (1) Sintassi: [comando] [opzioni] [argomenti] ls mostra il contenuto di una director l versione lunga a mostra anche i files nascosti che iniziano con. t presenta

Dettagli

Corso Linux ARCES. Lezione 3: Lavorare con la Shell

Corso Linux ARCES. Lezione 3: Lavorare con la Shell Corso Linux ARCES Lezione 3: Lavorare con la Shell La Shell Una shell è un'interfaccia, grafica o meno ( CLI ad esempio ), che permette all'utente di interagire col sistema attraverso l'utilizzo di una

Dettagli

Corso di Laboratorio di Sistemi Operativi

Corso di Laboratorio di Sistemi Operativi Corso di Laboratorio di Sistemi Operativi Lezione 4 Alessandro Dal Palù email: alessandro.dalpalu@unipr.it web: www.unipr.it/~dalpalu Approfondimento su make http://http://capone.mtsu.edu/csdept/facilitiesandresources/make.htm

Dettagli

Introduzione ai sistemi UNIX/Linux. Introduzione ai sistemi UNIX/Linux

Introduzione ai sistemi UNIX/Linux. Introduzione ai sistemi UNIX/Linux Introduzione ai sistemi UNIX/Linux M. Di Francesco, Vanessa Gardellin, Sara Volpi Ilaria Giannetti, Daniele Migliorini Dipartimento di Ingegneria dell Informazione Università di Pisa Informazioni generali

Dettagli

Elencare i contenuti di una directory

Elencare i contenuti di una directory La shell di Linux Elencare i contenuti di una directory $ ls elenca i contenuti della working directory. $ ls dir_name elenca i contenuti di dir_name. ls: opzioni -a tutti i files, compresi quelli nascosti

Dettagli

Introduzione ai sistemi UNIX/Linux

Introduzione ai sistemi UNIX/Linux Introduzione ai sistemi UNIX/Linux Corso di laurea specialistica in Ingegneria Elettronica Domenico De Guglielmo E-mail: domenicodegu@virgilio.it Telefono: 050 2217 468 Pervasive Computing & Networking

Dettagli

Controllo di processi

Controllo di processi Controllo di processi Ogni processo del sistema ha un PID (Process Identity Number). Ogni processo può generare nuovi processi (figli). La radice della gerarchia di processi è il processo init con PID=1.

Dettagli

Introduzione all'uso del sistema operativo Ubuntu

Introduzione all'uso del sistema operativo Ubuntu Introduzione all'uso del sistema operativo Ubuntu Aprire un Terminal. Osservare il prompt dei comandi Una shell è pronta ad interpretare ed eseguire i vostri comandi consentendovi di accedere ai servizi

Dettagli

Shell di Linux e Comandi Utente

Shell di Linux e Comandi Utente Shell di Linux e Comandi Utente Sistemi Operativi Roberto Aringhieri DTI Crema - Università degli Studi di Milano Sistemi Operativi - Shell di Linux e Comandi Utente Roberto Aringhieri p.1/23 Outline Accesso

Dettagli

Il sistema operativo LINUX Script di Shell

Il sistema operativo LINUX Script di Shell Il sistema operativo LINUX Script di Shell Giorgio Di Natale Stefano Di Carlo Bartolomeo Montrucchio Politecnico di Torino Dip. Automatica e

Dettagli

Esame Laboratorio di Sistemi Operativi Cognome Nome Mat.

Esame Laboratorio di Sistemi Operativi Cognome Nome Mat. Esame Laboratorio di Sistemi Operativi 2-01-2008 Il compito è costituito da domande chiuse e domande aperte. Non è consentito l uso di libri, manuali, appunti., etc. Tempo massimo 1 ora. Domande chiuse:

Dettagli

Esercitazione 2 GUIDA

Esercitazione 2 GUIDA Corso di Laurea in Biologia Molecolare, Università di Padova Insegnamento di Informatica e Bioinformatica Esercitazione 2 Padova, 13 aprile 2016 GUIDA Uso della shell Unix Obbiettivo dell'esercitazione

Dettagli

Usare Python in Linux

Usare Python in Linux 26 Febbraio 2015 Outline 1 Struttura e programma delle lezioni 2 3 Outline Struttura e programma delle lezioni 1 Struttura e programma delle lezioni 2 3 Lezione tipo Struttura e programma delle lezioni

Dettagli

Il sistema operativo LINUX Esercitazione 3. Esercizio 1. Esercizio 2. Esercizio 5 - Soluzione. Il sistema operativo LINUX Esercitazione 4.

Il sistema operativo LINUX Esercitazione 3. Esercizio 1. Esercizio 2. Esercizio 5 - Soluzione. Il sistema operativo LINUX Esercitazione 4. Il sistema operativo LINUX Esercitazione 3 Esercizio 1 Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica Mostrare una lista

Dettagli

File System. File system gerarchico. Proteggere la propria home directory ... / = Root nodi interni: directory foglie: directory vuote o file

File System. File system gerarchico. Proteggere la propria home directory ... / = Root nodi interni: directory foglie: directory vuote o file File system gerarchico File System = Root nodi interni: directory foglie: directory vuote o file Arancio: porzione del f.s. di sistema Altri colori: sottoalberi del sistema operativo di proprietà dei vari

Dettagli

Esame Laboratorio di Sistemi Operativi Cognome Nome Mat.

Esame Laboratorio di Sistemi Operativi Cognome Nome Mat. Il compito è costituito da domande chiuse, domande aperte ed esercizi. Non è consentito l uso di libri, manuali, appunti., etc. Tempo massimo 2 ore. Domande chiuse: ogni domanda corrisponde ad un punteggio

Dettagli

Sintassi: alias nome_nuovo= comando_intero Se si usa il comando senza argomenti vengono mostrati tutti gli alias in uso.

Sintassi: alias nome_nuovo= comando_intero Se si usa il comando senza argomenti vengono mostrati tutti gli alias in uso. alias Crea degli alias per i comandi. E utile usare degli alias quando si è soliti adoperare dei comandi molto lunghi. La riga per l inserimento del comando alias va inserita all interno del file.bashrc

Dettagli

Corso ForTIC C2 LEZIONE n. 5. I principali comandi utente e il loro uso Pipeline e ridirezioni

Corso ForTIC C2 LEZIONE n. 5. I principali comandi utente e il loro uso Pipeline e ridirezioni Corso ForTIC C2 LEZIONE n. 5 I principali comandi utente e il loro uso Pipeline e ridirezioni I contenuti di questo documento, salvo diversa indicazione, sono rilasciati sotto una licenza Creative Commons

Dettagli

Laboratorio di Internet I Il sistema operativo Linux

Laboratorio di Internet I Il sistema operativo Linux Università di Roma Sapienza Sede di Latina 25 Febbraio 2014 Laboratorio di Internet I Il sistema operativo Linux Luca Chiaraviglio Ingegneria dell Informazione Outline Breve storia di Linux Concetti base

Dettagli

Basi di Linux per GRASS. Cartografia numerica e GIS

Basi di Linux per GRASS. Cartografia numerica e GIS Basi di Linux per GRASS Cartografia numerica e GIS Quale distribuzione Linux scegliere? Debian - http://www.debian.org E' una delle distribuzioni gratuite più conosciute. Fedora - http://fedora.redhat.com/

Dettagli

CORSO LINUX PER LA CERTIFICAZIONE LPI ESSENTIALS

CORSO LINUX PER LA CERTIFICAZIONE LPI ESSENTIALS CORSO LINUX PER LA CERTIFICAZIONE LPI ESSENTIALS Comandi da terminale Il comando sleep fa attendere un comando prima dell'esecuzione. Prova il comando: $ sleep 3s && echo Ciao Mondo! $ Comandi da terminale

Dettagli

Esempio 1. Creare uno script (file comandi) che abbia la sintassi:

Esempio 1. Creare uno script (file comandi) che abbia la sintassi: Esempi shell 1 Esempio 1 Creare uno script (file comandi) che abbia la sintassi:./ps_monitor.sh [N] Lo script: in caso di assenza dell argomento, deve mostrare i processi di tu@ gli utena (compresi quelli

Dettagli

CORSO DI SISTEMI OPERATIVI A - ESERCITAZIONE 1

CORSO DI SISTEMI OPERATIVI A - ESERCITAZIONE 1 UNIVERSITÀ DEGLI STUDI DI PARMA Facoltà di Ingegneria Corso di Laurea in Ingegneria Elettronica-Informatica-Telecomunicazioni a.a. 2001-2002 CORSO DI SISTEMI OPERATIVI A - ESERCITAZIONE 1 1 Accesso al

Dettagli

Sistemi Operativi. Corso di Laurea Triennale in Ingegneria Informatica. Esercitazione 2. Editor Utenti Permessi

Sistemi Operativi. Corso di Laurea Triennale in Ingegneria Informatica. Esercitazione 2. Editor Utenti Permessi Sistemi Operativi Corso di Laurea Triennale in Ingegneria Informatica Editor Utenti Permessi Esercitazione 2 Domande sulle lezioni passate? Lezione 2 Editor Utenti e gruppi, Permessi, Gestione utenti (prima

Dettagli

Foglio Elettronico Lezione 1

Foglio Elettronico Lezione 1 - Introduzione - Celle e riferimenti - Formule - Approfondimenti - Funzioni logiche Sommario Introduzione - Foglio elettronico o foglio di calcolo - Cos'è? Strumento per raccogliere dati organizzati in

Dettagli

L utility Unix awk [Aho-Weinberger-Kernighan]

L utility Unix awk [Aho-Weinberger-Kernighan] L utility Unix awk [Aho-Weinberger-Kernighan] L utility awk serve per processare file di testo secondo un programma specificato dall utente. L utility awk legge riga per riga i file ed esegue una o più

Dettagli

Linguistica Computazionale: esercitazioni

Linguistica Computazionale: esercitazioni Esercitazione 1 Felice Dell'Orletta ItaliaNLP Lab (www.italianlp.it) presso Istituto di Linguistica Computazionale A. Zampolli CNR felice.dellorletta@ilc.cnr.it 24 settembre 2014 Linguistica Computazionale:

Dettagli

Espressioni Regolari. Giancarlo Massidda

Espressioni Regolari. Giancarlo Massidda Espressioni Regolari Giancarlo Massidda Espressioni regolari O RegEx dall inglese regular expression Traduzione errata: dovrebbe essere espressioni basate su regole Si tratta di un sistema per descrivere

Dettagli

Input/Output di numeri

Input/Output di numeri Input/Output di numeri I/O di numeri Per utilizzare le funzioni di I/O occorre include il file di intestazione (o file header) stdio.h utilizzando all inizio del sorgente la direttiva #include

Dettagli

Funzioni di I/O per numeri. Input e output di valori numerici. Input formattato scanf. Stream preesistenti

Funzioni di I/O per numeri. Input e output di valori numerici. Input formattato scanf. Stream preesistenti Funzioni di I/O per numeri 2 Input e output di valori numerici Ver. 2.4.2 2012 - Claudio Fornaro - Corso di programmazione in C Per utilizzare le funzioni di Input/Output bisogna includere il file di intestazione

Dettagli

Comandi Shell per Linux( Simile a Minix) Struttura della linea di comando di Unix

Comandi Shell per Linux( Simile a Minix) Struttura della linea di comando di Unix Comandi Shell per Linux( Simile a Minix) Struttura della linea di comando di Unix Un comando è un programma che chiama il sistema Unix per qualche compito. Un comando ha la forma: comando [opzioni] [argomenti]

Dettagli

Permessi base e speciali in Unix-Linux

Permessi base e speciali in Unix-Linux Permessi base e speciali in Unix-Linux Le autorizzazioni di base vengono assegnati utilizzando tre tipi di accesso: Lettura, scrittura ed esecuzione. Questi tipi di accesso vengono utilizzati per determinare

Dettagli

14 - INTRODUZIONE AL SISTEMA OPERATIVO LINUX

14 - INTRODUZIONE AL SISTEMA OPERATIVO LINUX LABORATORIO DI PROGRAMMAZIONE Corso di laurea in matematica 14 - INTRODUZIONE AL SISTEMA OPERATIVO LINUX Marco Lapegna Dipartimento di Matematica e Applicazioni Universita degli Studi di Napoli Federico

Dettagli

Comandi filtro: sed. Se non si specificano azioni, sed stampa sullo standard output le linee in input, lasciandole inalterate.

Comandi filtro: sed. Se non si specificano azioni, sed stampa sullo standard output le linee in input, lasciandole inalterate. Comandi filtro: sed Il nome del comando sed sta per Stream EDitor e la sua funzione è quella di permettere di editare il testo passato da un comando ad un altro in una pipeline. Ciò è molto utile perché

Dettagli

I Metacaratteri della Shell Unix

I Metacaratteri della Shell Unix I Metacaratteri della Shell Unix La shell Unix riconosce alcuni caratteri speciali, chiamati metacaratteri, che possono comparire nei comandi. Quando l utente invia un comando, la shell lo scandisce alla

Dettagli

Introduzione a Unix. Barbara Guidi. Corso Informatica I /2013. Università di Pisa. Introduzione al calcolatore Introduzione a Unix Esercitazione

Introduzione a Unix. Barbara Guidi. Corso Informatica I /2013. Università di Pisa. Introduzione al calcolatore Introduzione a Unix Esercitazione 1 1 Dipartimento di Informatica Università di Pisa Corso Informatica I - 2012/2013 Outline 1 Introduzione al calcolatore 2 3 Struttura di un calcolatore Nei calcolatori si distinguono due componenti fondamentali:

Dettagli

cambiare utente mediante il comando su verificare chi siete e su che dir state lavorando Chi siete e che dir? (Inserisci la risposta)

cambiare utente mediante il comando su verificare chi siete e su che dir state lavorando Chi siete e che dir? (Inserisci la risposta) Collegamento al server LINUX Segui le seguenti istruzioni per accedere al server LINUX. Da WINDOWS Lancia telnet dalla riga di comando telnet 10.15.1.5, 10.15.1.12, 10.15.1.18, 10.15.1.23 aula boole telnet

Dettagli

Archiviazione, ricerca dei file e pianificazione dei processi

Archiviazione, ricerca dei file e pianificazione dei processi Archiviazione, ricerca dei file e pianificazione dei processi Domenico De Guglielmo E-mail: domenicodegu@virgilio.it Telefono: 050 2217 468 Pervasive Computing & Networking Lab (PerLab) http://www.perlab.it

Dettagli

Guida Linux. Molto rapida

Guida Linux. Molto rapida Guida Linux Molto rapida Due parole sull ambiente grafico Potete usare: KDE o GNOME Si sceglie prima di mettere la password. Questione di gusti GNOME KDE Il filesystem Ora voi siete nella vostra home È

Dettagli

Laboratorio di Sistemi Operativi

Laboratorio di Sistemi Operativi Laboratorio di Sistemi Operativi A.A. 2016/2017 Daniele Ronzani Email: dronzani@math.unipd.it La Shell La shell è la parte del sistema operativo che permette all'utente di interagire con il sistema stesso.

Dettagli

L ambiente UNIX/Linux. Comandi UNIX & Linux (parte A) Stefano Quer Dipartimento di Automatica e Informatica Politecnico di Torino

L ambiente UNIX/Linux. Comandi UNIX & Linux (parte A) Stefano Quer Dipartimento di Automatica e Informatica Politecnico di Torino L ambiente UNIX/Linux Comandi UNIX & Linux (parte A) Stefano Quer Dipartimento di Automatica e Informatica Politecnico di Torino 2 Installazione Linux Esistono diverse possibilità per avere a disposizione

Dettagli

Shell. Una shell di comandi ci consente, dunque, di eseguire tutte le operazioni di cui abbiamo bisogno!

Shell. Una shell di comandi ci consente, dunque, di eseguire tutte le operazioni di cui abbiamo bisogno! Shell La shell consente all'utente di interfacciarsi con il Sistema Operativo attraverso riga di comando. (Se avete installato correttamente Linux è molto probabile che la shell di comando funzioni anche

Dettagli

Il DOS diagramma di flusso. I comandi del DOS. I comandi: vista funzionale. Parametri. Opzioni. I comandi: sintassi

Il DOS diagramma di flusso. I comandi del DOS. I comandi: vista funzionale. Parametri. Opzioni. I comandi: sintassi Il DOS diagramma di flusso Inizio Bootstrap I comandi del DOS Fondamenti di Informatica Anno Accademico 2000-01 1 Stampa prompt Leggi comando Esegui comando 2 I comandi: vista funzionale Parametri input

Dettagli

NOZIONI BASE SHELL E SCRIPT LINUX

NOZIONI BASE SHELL E SCRIPT LINUX NOZIONI BASE SHELL E SCRIPT LINUX Aggiornato al 11 gennaio 2006 Ermes ZANNONI (ermes@zannoni.to.it) (http://www.zannoni.to.it) Indice : 1. Introduzione 2. La Shell 2.1 Comandida Shell 2.1.1 File e directory

Dettagli

Processi. C. Baroglio a.a

Processi. C. Baroglio a.a Processi C. Baroglio a.a. 2002-2003 1 Processi, flussi e pipe In Unix ogni processo è identificato da un numero intero, il Process IDentifier o PID per brevità. I processi sono generati o dall esecuzione

Dettagli

Scritto da Martedì 12 Luglio :14 - Ultimo aggiornamento Venerdì 15 Luglio :47

Scritto da Martedì 12 Luglio :14 - Ultimo aggiornamento Venerdì 15 Luglio :47 In questo articolo mostreremo come è possibile eseguire un programma esterno o uno script usando il linguaggio PHP. Le funzioni che si occupano di eseguire dei comandi sono quattro: - shell_exec() - exec()

Dettagli

Command line kung fu

Command line kung fu Command line kung fu Bash, filtri & co. Riccardo Binetti punkerbino@gmail.com Corsi GNU/Linux Avanzati 2014 Riccardo Binetti Bash e filtri Corsi Linux Avanzati 2014 1 / 31 Il terminale? Nel 2014? Sì, il

Dettagli

Controllo di flusso negli script: if-then-else

Controllo di flusso negli script: if-then-else Controllo di flusso negli script: if--else Il coman condizionale if condition_command true_commands else false_commands esegue il coman condition command e utilizza il suo exit status per decidere se eseguire

Dettagli

Laboratorio. Sistemi Operativi: Linux/Windows. Giovanni Da San Martino

Laboratorio. Sistemi Operativi: Linux/Windows. Giovanni Da San Martino Laboratorio Sistemi Operativi: Linux/Windows Giovanni Da San Martino dasan@math.unipd.it 1 Sistemi operativi Un sistema operativo è insieme di programmi che gestiscono la macchina fisica. Un sistema operativo

Dettagli

Esecuzione di script

Esecuzione di script Shell Script Gli shell script sono programmi interpretati dalla shell, scritti in un linguaggio i cui costrutti atomici sono i comandi Unix. I comandi possono essere combinati in sequenza o mediante i

Dettagli

CORSO ACCESS PARTE IV

CORSO ACCESS PARTE IV Creazione di un database / gestione tabelle Per creare un nuovo database Menu File Selezionare Nuovo Scegliere Database vuoto nella scheda Generale e confermare con Ok Impostare il nome e il percorso nella

Dettagli

File binari e file di testo

File binari e file di testo I file File binari e file di testo distinzione tra file binari file di testo si possono usare funzioni diverse per la gestione di tipi di file diversi Programmazione Gestione dei file 2 File binari e file

Dettagli

Editor, Utenti e Permessi Insegnamento di Sistemi Operativi di Rete Master Universitario in Tecnologie Internet

Editor, Utenti e Permessi Insegnamento di Sistemi Operativi di Rete Master Universitario in Tecnologie Internet Editor, Utenti e Permessi Insegnamento di Sistemi Operativi di Rete Master Universitario in Tecnologie Internet Domenico De Guglielmo E-mail: domenicodegu@virgilio.it Telefono: 050 2217 468 Pervasive Computing

Dettagli

Keep it simple, stupid!

Keep it simple, stupid! Keep it simple, stupid! La filosofia alla base dei programmi Unix (solitamente non grafici) è semplice: ogni programma è specializzato per uno scopo ben preciso; funzionalità avanzate si ottengono dalla

Dettagli

Manipolazione di testo

Manipolazione di testo Lesson #5 Manipolazione di testo Roberto De Virgilio Sistemi operativi - 2 Dicembre 2015 Comandi filtro: sed Il nome del comando sed sta per Stream EDitor e la sua funzione è quella di permettere di editare

Dettagli

Sistemi Operativi Teledidattico

Sistemi Operativi Teledidattico Sistemi Operativi Teledidattico Anno 2002 3a esercitazione 5/10/2002 Paolo Torroni processi fork (creazione di un figlio) exec (sostituzione di codice del programma in esecuzione) wait (attesa della terminazione

Dettagli