Interfaccia a riga di comando

Un'interfaccia a riga di comando o CLI ( interfaccia a riga di comando inglese , comunemente abbreviata CLI ) è un'interfaccia uomo-macchina in cui la comunicazione tra l'utente e il computer avviene in modalità testo  :

Un'interfaccia a riga di comando può essere utilizzata sia per avviare l'esecuzione di vari software tramite un interprete di comandi , sia per dialogare con l'utente di questi software. È l' interazione fondamentale tra un essere umano e un computer (o qualsiasi altra apparecchiatura informatica).

Quando un'interfaccia è pronta per ricevere un comando, lo indica con un prompt dei comandi . Questo, a volte indicato come prompt anglicism , consiste di pochi caratteri all'inizio di una riga (di solito il nome dell'account dell'utente e / o l'unità logica predefinita e / o il percorso predefinito e / o la data ...), che termina con un carattere noto (spesso "  ]  ", "  #  ", "$" o "  >  "), che invita l'utente a digitare un comando.

Storico

L'interfaccia della riga di comando è la più vecchia interfaccia di conversazione sviluppata sui computer. Prima di allora, i computer lavoravano in batch  : i dati registrati su una serie di schede perforate o su nastro perforato venivano inviati al computer . Questi dati indicavano al computer quali programmi eseguire e quali informazioni dovevano eseguire quei programmi. Il risultato dell'elaborazione (riuscita o errata) è stato stampato senza che sia avvenuto alcun dialogo con l'utente.

L'emergere dei telescriventi negli anni '60 , e poi delle console degli anni '70 , che sono dispositivi che ricevono e inviano caratteri al computer, hanno permesso il lavoro al computer sotto forma di sessioni . Il dialogo tra l'utente e il computer è stato quindi effettuato dalla riga di comando.

A partire dagli anni '80 , la comparsa dei terminali in modalità grafica e dei mouse ha permesso lo sviluppo di interfacce grafiche , più apprezzate dal grande pubblico, forse perché non richiedono l'apprendimento dei nomi di diversi comandi prima di usare un computer. Questo passaggio di paradigma dall'interfaccia a riga di comando alle interfacce grafiche utente (GUI) è legato in particolare all'immissione sul mercato da parte di Apple del Lisa inGennaio 1983, quindi soprattutto il Macintosh in formatoGennaio 1984: questi due modelli di computer sono i primi computer pubblici in generale ad utilizzare interfacce di tipo Windows, icone, menu e dispositivo di puntamento (WIMP) , che possono essere manipolati con il mouse e che utilizzano la metafora del desktop sullo schermo . Tuttavia, specialmente sui sistemi operativi derivati ​​da Unix , le interfacce a riga di comando sono ancora oggi popolari tra alcuni scienziati informatici , data la ricchezza delle loro possibilità.

L'interfaccia della riga di comando in Unix

Una delle peculiarità del sistema operativo Unix , da cui deriva Linux , è che, sin dal suo inizio, disponeva di più di cento programmi software, che spesso eseguivano processi molto semplici, tutti utilizzabili da riga di comando.

Sintassi dei comandi generali

I comandi elementari sotto Unix sono nella forma:

$> commande options fichiers_ou_données

Il comando che compare all'inizio di una riga è quasi sempre il nome di un programma. Questo programma può essere un comando del sistema operativo, un software scritto dall'utente (spesso in linguaggio C ) o una shell . Alcuni comandi come il comando cd ( c hange of of ossier / directory ) non possono essere correttamente indirizzati da un software specifico. In questo caso vengono eseguiti direttamente dall'interprete dei comandi .

Alcuni di questi comandi possono essere eseguiti digitando solo il loro nome sulla tastiera. Ma la maggior parte dei comandi accetta opzioni (un trattino seguito da una o più lettere) che consentono di utilizzare il comando in modo diverso dalla modalità di funzionamento predefinita. Infine, molti comandi sono seguiti da uno o più nomi di file , directory o altro, con i quali funzioneranno. Tutte le informazioni separate da spazi a destra del nome del comando sono chiamate argomenti della riga di comando .

Il linguaggio C è stato progettato per semplificare il recupero degli argomenti della riga di comando dal software che li utilizza.

Infine, per sapere come utilizzare un software, è a disposizione dell'utente una documentazione ( Man pages ). Viene utilizzato facendo precedere il comando con man .

Opzione

Una o più delle opzioni della riga di comando (a volte chiamate anche flag ) cambiano il modo in cui funziona un comando. L'effetto dell'opzione dipende dall'ordine. Di solito, le opzioni seguono immediatamente il nome del comando sulla riga di comando e sono separate l'una dall'altra da spazi.

Il formato delle opzioni è molto variabile. Molto spesso, la sintassi utilizzata si basa su una convenzione piuttosto che su un requisito del sistema operativo. Molto spesso, in Unix, le opzioni vengono introdotte da - e fanno distinzione tra maiuscole e minuscole. I monogrammi sono comuni, ma i programmi recenti tendono a offrire opzioni con nomi più lunghi e chiari.

È impossibile sapere a priori quali opzioni riconosce un programma, a meno che non si consulti la sua documentazione. Tuttavia, è pratica comune (ma non sempre) che un programma visualizzi un riepilogo delle sue opzioni quando viene avviato dalla riga di comando con una delle seguenti opzioni :? ; -? ; -h ; /? ; / h ; -aiuto ; o --help .

Reindirizzamenti di I / O

Per impostazione predefinita, i comandi conversazionali recuperano i dati digitati dall'utente sulla tastiera. Il risultato della loro esecuzione viene visualizzato sullo schermo. In caso di errore durante l'esecuzione, sullo schermo compaiono anche messaggi di errore.

È possibile indicare alla shell che i dati di input o output devono essere recuperati / archiviati in file piuttosto che sulla tastiera e sullo schermo. Per questo, sono disponibili diversi tipi di reindirizzamento di input / output:

Esempi:

sort monfichier

visualizza le righe del file myfile in ordine alfabetico sullo schermo . Se il file myfile non esiste, sullo schermo viene visualizzato un messaggio di errore.

sort monfichier > resultat 2> problemes

memorizza nel file dei risultati le righe del file myfile classificate in ordine alfabetico. Se il file myfile non esiste, viene visualizzato un messaggio di errore nel file dei problemi .

Sequenza di comandi

I sistemi operativi di tipo Unix consentono l'esecuzione di diversi comandi. L'output dei dati da un comando viene utilizzato come input per il comando successivo senza la necessità di file intermedi.

La sintassi generale è:

commande1 options arguments | commande2 options | commande3...

Esempio:

find / -size +1000k -mtime -7 | sort | tee trace | less

In un'unica riga di comando, il comando precedente ricerca in tutte le directory del computer i file oltre i 1000 kilobyte modificati negli ultimi 7 giorni, li visualizza pagina per pagina con la possibilità di spostarsi nell'elenco dei percorsi dei percorsi ordinati in ordine alfabetico, e memorizza anche questi percorsi nel file di traccia .

Metacaratteri

I metacaratteri possono essere utilizzati nelle righe di comando per esprimere nomi di file che hanno una parte comune:

Esempi:

Usare il risultato di un comando come argomento di un altro

Il `che circonda un comando permette al risultato di quel comando di essere usato come argomento (i) nella riga di comando.

Esempi:

$> echo "Nous sommes le" `date +%d/%m/%y` "et il est" `date +%H:%M:%S`

visualizza una frase contenente la data e l'ora correnti. Per questo, il comando date viene eseguito due volte con un formato di output diverso.

$> echo "2 + 2 =" `expr 2 + 2`

visualizza 2 + 2 = 4 dopo aver eseguito il calcolo.

Altre particolarità

L'interfaccia della riga di comando di MS / DOS

MS-DOS è stato creato all'inizio degli anni '80 . Funziona dalla riga di comando con lo stesso tipo di sintassi dei comandi Unix. Ma l'elenco dei comandi disponibili in MS-DOS è molto più piccolo.

Alcuni comandi come l' ordinamento svolgono lo stesso ruolo in Unix e in MS-DOS.

Altri comandi hanno nomi diversi nei due sistemi operativi. Quindi il comando trova  :

Le righe di comando di MS-DOS hanno fondamentalmente la stessa sintassi dei comandi Unix, ma le possibilità sono più limitate.

MS-DOS consente:

L'interfaccia della riga di comando di Windows NT

cmd.exe è l'interfaccia della riga di comando per i sistemi operativi della famiglia Windows NT (inclusi Microsoft Windows 2000 , Microsoft Windows XP , Microsoft Windows Vista …). È un'evoluzione dell'interfaccia MS-DOS .

Con Windows Vista , viene visualizzato un nuovo ambiente della riga di comando di Windows PowerShell , che esegue anche Windows XP SP2.

Note e riferimenti

  1. Thierry Benjamin , Dare per vedere, permettere di agire. L'invenzione dell'interattività grafica e il concetto di utente nell'informatica e nelle telecomunicazioni in Francia (1961-1990) , Parigi (Francia),10 dicembre 2013, 1019  p. ( SUDOC  176590951 , leggi online ) , "L'interfaccia grafica di Wimp, un nuovo paradigma dominante dell'interazione uomo-macchina", p.  604-605

Articoli Correlati