Interface da Linha de comando

Uma interface de linha de comando ou CLI ( interface de linha de comando em inglês , comumente abreviada CLI ) é uma interface homem-máquina na qual a comunicação entre o usuário e o computador ocorre em modo de texto  :

Uma interface de linha de comando pode ser usada tanto para iniciar a execução de vários softwares por meio de um interpretador de comandos , quanto para diálogos com o usuário desses softwares. É a interação fundamental entre um ser humano e um computador (ou qualquer outro equipamento de computador).

Quando uma interface está pronta para receber um comando, ela indica isso com um prompt de comando . Isso, às vezes referido como anglicismo imediato , consiste em alguns caracteres no início de uma linha (geralmente o nome da conta do usuário e / ou a unidade lógica padrão e / ou o caminho padrão. E / ou data ...), terminando com um caractere conhecido (geralmente “  ]  ”, “  #  ”, “$” ou “  >  ”), convidando o usuário a digitar um comando.

Histórico

A interface de linha de comando é a interface de conversação mais antiga desenvolvida em computadores. Antes disso, os computadores trabalhavam no processamento em lote  : os dados gravados em uma série de cartões perfurados ou fita perfurada eram enviados ao computador . Esses dados informam ao computador quais programas devem ser executados e quais informações esses programas devem ser executados. O resultado do processamento (bem-sucedido ou incorreto) foi impresso sem qualquer diálogo com o usuário.

O surgimento dos teletipos na década de 1960 e, posteriormente, os consoles da década de 1970 , que são dispositivos que recebem e enviam personagens para o computador, permitiram o trabalho do computador na forma de sessões . O diálogo entre o usuário e o computador foi então realizado na linha de comando.

A partir da década de 1980 , o surgimento de terminais em modo gráfico e de mouses permitiu o desenvolvimento de interfaces gráficas , mais apreciadas pelo grande público, talvez porque não exijam o aprendizado de nomes de comandos diferentes antes de d. 'Para usar um computador. Esta mudança de paradigma da interface de linha de comando para interfaces gráficas de usuário (GUI) está ligada em particular ao lançamento do Lisa pela Apple emJaneiro de 1983, especialmente o Macintosh emJaneiro de 1984: esses dois modelos de computador são os primeiros computadores de público geral a usar interfaces do tipo Windows, Icons, Menus and Pointing device (WIMP) , que podem ser manipuladas com o mouse e que usam a metáfora do desktop na tela . No entanto, especialmente em sistemas operacionais derivados do Unix , as interfaces de linha de comando ainda são populares entre alguns cientistas da computação hoje , dada a riqueza de suas possibilidades.

A interface de linha de comando em Unix

Uma das peculiaridades do sistema operacional Unix , do qual o Linux é derivado, é que, desde seu início, ele contava com mais de uma centena de programas de software, muitas vezes realizando processos muito simples, os quais podem ser usados ​​na linha de comando.

Sintaxe de comando geral

Os comandos elementares no Unix são da forma:

$> commande options fichiers_ou_données

O comando que aparece no início de uma linha é quase sempre o nome de um programa. Este programa pode ser um comando do sistema operacional, software escrito pelo usuário (geralmente em linguagem C ) ou um shell . Alguns comandos, como o comando cd ( c hange de de ossier / diretório ) não podem ser devidamente tratados por um software específico. Eles são, neste caso, executados diretamente pelo interpretador de comandos .

Alguns desses comandos podem ser executados digitando apenas seus nomes no teclado. Mas a maioria dos comandos aceita opções (um traço seguido por uma ou mais letras) que permitem que o comando seja usado de outra forma que não em seu modo de operação padrão. Finalmente, muitos comandos são seguidos por um ou mais nomes de arquivo , diretório ou outro, com os quais trabalharão. Todas as informações separadas por espaços à direita do nome do comando são chamadas de argumentos de linha de comando .

A linguagem C foi projetada para facilitar a recuperação de argumentos de linha de comando do software que os utiliza.

Por fim, para saber como utilizar um software, uma documentação ( páginas de manual ) está à disposição do usuário. É usado precedendo o comando com o homem .

Opção

Uma ou mais opções de linha de comando (às vezes também chamadas de sinalizador ) mudam a maneira como um comando funciona. O efeito da opção depende do pedido. Normalmente, as opções seguem imediatamente o nome do comando na linha de comando e são separadas umas das outras por espaços.

O formato das opções é muito variável. Na maioria das vezes, a sintaxe usada é baseada em uma convenção, e não em um requisito do sistema operacional. Mais freqüentemente, no Unix, as opções são introduzidas por - e diferenciam maiúsculas de minúsculas. Monogramas são comuns, mas programas recentes tendem a oferecer opções com nomes mais longos e claros.

É impossível saber a priori quais opções um programa reconhece, a menos que você consulte sua documentação. No entanto, é comum (mas nem sempre) a prática de um programa exibir um resumo de suas opções quando iniciado a partir da linha de comando com uma das seguintes opções :? ; -? ; -h ; /? ; / h ; -ajuda ; ou --help .

Redirecionamentos de E / S

Por padrão, os comandos de conversação recuperam dados digitados pelo usuário no teclado. O resultado de sua execução é exibido na tela. Em caso de erro durante a execução, também aparecem mensagens de erro na tela.

É possível indicar ao shell que os dados de entrada ou saída devem ser recuperados / armazenados em arquivos em vez de no teclado e na tela. Para isso, estão disponíveis diferentes tipos de redirecionamento de entrada / saída:

Exemplos:

sort monfichier

exibe as linhas do arquivo myfile em ordem alfabética na tela . Se o arquivo myfile não existir, uma mensagem de erro aparecerá na tela.

sort monfichier > resultat 2> problemes

armazena no arquivo de resultado as linhas do arquivo myfile classificadas em ordem alfabética. Se o arquivo myfile não existir, uma mensagem de erro aparecerá no arquivo de problemas .

Sequência de comandos

Os sistemas operacionais do tipo Unix permitem a execução de vários comandos. A saída de dados de um comando é usada como entrada para o próximo comando sem a necessidade de arquivos intermediários.

A sintaxe geral é:

commande1 options arguments | commande2 options | commande3...

Exemplo:

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

Em uma única linha de comando, o comando acima busca em todos os diretórios do computador os arquivos acima de 1000 kilobytes modificados nos últimos 7 dias, exibe-os página por página com a possibilidade de percorrer a lista de caminhos caminhos ordenados em ordem alfabética, e também armazena esses caminhos no arquivo de rastreamento .

Metacaracteres

Metacaracteres podem ser usados ​​em linhas de comando para expressar nomes de arquivos que têm uma parte comum:

Exemplos:

Usando o resultado de um comando como um argumento de outro

O `ao redor de um comando permite que o resultado deste comando seja usado como argumento (s) na linha de comando.

Exemplos:

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

exibe uma frase contendo a data e hora atuais. Para isso, o comando date é executado duas vezes com um formato de saída diferente.

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

exibe 2 + 2 = 4 após fazer o cálculo.

Outras particularidades

A interface de linha de comando do MS / DOS

O MS-DOS foi criado no início dos anos 1980 . Ele funciona a partir da linha de comando com o mesmo tipo de sintaxe dos comandos Unix. Mas a lista de comandos disponíveis no MS-DOS é muito menor.

Alguns comandos, como sort, desempenham a mesma função no Unix e no MS-DOS.

Outros comandos têm nomes diferentes nos dois sistemas operacionais. Portanto, o comando find  :

As linhas de comando do MS-DOS têm basicamente a mesma sintaxe dos comandos do Unix, mas as possibilidades são mais limitadas.

O MS-DOS permite:

A interface de linha de comando do Windows NT

cmd.exe é a interface de linha de comando para sistemas operacionais da família Windows NT (incluindo Microsoft Windows 2000 , Microsoft Windows XP , Microsoft Windows Vista …). É uma evolução da interface do MS-DOS .

Com o Windows Vista , um novo ambiente de linha de comando do Windows PowerShell aparece , também executando o Windows XP SP2.

Notas e referências

  1. Thierry Benjamin , Dar para ver, permitir agir. A invenção da interatividade gráfica e o conceito de usuário em computação e telecomunicações na França (1961-1990) , Paris (França),10 de dezembro de 2013, 1019  p. ( SUDOC  176590951 , lido online ) , “A interface gráfica Wimp, um novo paradigma dominante da interação homem-máquina”, p.  604-605

Artigos relacionados