Como usar o comando do tipo Linux

Descubra se um comando resolve para um alias, um arquivo de disco, uma função shell, um comando interno ou uma palavra reservada. Use o tipo para descobrir como os comandos do Linux são executados e entender melhor o sistema.

Faça meu lance

Quando abrimos uma janela de terminal e começamos a emitir comandos para nosso computador Linux, raramente paramos para pensar quais componentes de software dentro do sistema operacional estão reagindo aos nossos comandos e os executando para nós. Nós digitamos o comando, obtemos o resultado e continuamos com nossa carga de trabalho.

Saber como os comandos são executados nos dá uma melhor compreensão da forma como nosso Linux ou outro sistema operacional semelhante ao Unix é construído. Dar uma espiada embaixo do capô pode nos tornar um motorista mais informado.

As instruções que emitimos para a linha de comando estão em uma das seguintes categorias:

Alias: Um comando definido pelo usuário (ou sistema) que faz com que outras sequências de comando, geralmente longas ou complexas, ocorram.
Arquivo de disco: um arquivo executável binário, como / usr / bin / top.
Função shell: uma função definida pelo usuário (ou sistema) que pode ser usada na linha de comando ou incluída em scripts.
Comando embutido: um comando executado pelo próprio shell, como pwd.
Palavra reservada: uma palavra reservada pelo shell, como if e elif. Eles também são chamados de palavras-chave.

  Como adicionar o bate-papo do Facebook Messenger no Linux com o Pidgin IM

O comando type nos diz qual categoria qualquer um dos comandos do Linux pertence. Aqui está um tutorial rápido para entender a saída do comando.

O tipo Command

Vamos examinar alguns exemplos rápidos para cada uma das categorias de comando.

type date

O comando date é um arquivo de disco executável.

type ls

O comando ls é um alias, envolvendo o comando ls subjacente para usar a opção –color = auto por padrão.

type lowdown

O comando lowdown é uma função definida pelo usuário que foi configurada no comutador usado para pesquisar este artigo. Ele fornece um instantâneo rápido de alguns recursos do sistema. É uma combinação de whoami, w, free e df.

type pwd

O comando pwd é um comando interno do shell Bash.

type elif

O comando elif é uma palavra reservada do shell Bash.

  Como configurar um PC Linux para crianças

Usando vários comandos

Você pode fornecer vários comandos de tipo para identificar de uma vez.

type date top ls

A opção -t

Nenhuma das opções que o tipo aceitará tem nomes. Assim, podemos pegar nosso livro de nomes e batizá-los nós mesmos. Se você pensar na opção -t como significando “conciso”, não estará muito errado. Ele reduz as respostas do tipo para respostas de uma única palavra.

type -t date
type -t pwd
type -t lowdown

A opção -a

Vamos chamar isso de opção “todos”. Ele lista todos os locais onde o comando está localizado. Observe que esta opção não funcionará se você também usar a opção -p.

Por exemplo, se você tiver um alias com o mesmo nome do comando subjacente, poderá obter informações sobre o alias e o comando.

type -a ls

A opção -f

A opção -f força o tipo a não pesquisar as funções definidas pelo usuário ou sistema. Pense nesta opção como “função de pesquisa desativada”. Observe que se o comando for uma função, digite informará que o comando não foi encontrado.

type -f top
type -f lowdown

A opção -P

Se você usar a opção -P, digite irá apenas pesquisar os diretórios em $ PATH. Portanto, podemos chamar essa opção de “caminho”. Observe que esta opção usa um “P” maiúsculo.

type -P date chmod adduser

A opção -p

Se você usar a opção -p, o tipo responderá apenas se o comando for um arquivo do disco rígido. Observe que esta opção usa um “p” minúsculo.

type -p mount
type -p ls
type -p -a ls

type não dá nenhuma resposta para ls porque ls é um alias e não um arquivo de disco.

  Como interromper processos do terminal Linux

Mas se incluirmos a opção -a para que o tipo procure todas as instâncias do comando ls, ele lista o arquivo de disco subjacente que o alias ls utiliza.

Resumo

Isso foi bom e simples, mas esclarecedor ao mesmo tempo.

Temos a tendência de pensar em qualquer coisa que digitamos em uma janela de terminal como um “comando” e deixamos por isso mesmo. Mas, na verdade, os comandos são implementados de várias maneiras no sistema Linux. E o tipo permite que você descubra qual é.