Descubra se um comando resolve para um alias, um arquivo de disco, uma função shell, um comando embutido ou uma palavra reservada. Usar type
para descobrir como seus comandos do Linux são executados e entender melhor seu sistema.
Faça minha oferta
Quando abrimos uma janela de terminal e começamos a enviar 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 escrevemos o comando, obtemos o resultado e seguimos em frente com nossa carga de trabalho.
Saber como os comandos são executados nos dá uma melhor compreensão de como nosso Linux ou outros sistemas operacionais Unix são construídos.. Dar uma olhada sob o capô pode nos tornar um motorista mais informado.
As instruções que emitimos para a linha de comando se enquadram em uma das seguintes categorias:
- Pseudônimo: Um comando definido pelo usuário (ou o sistema) o que faz com que outros scripts ocorram, geralmente longo ou complexo.
- Arquivo de disco: Um arquivo binário executável, O que
/usr/bin/top
. - Função Shell: Uma função definida pelo usuário (ou o sistema) que pode ser usado na linha de comando ou pode ser incluído em scripts.
- Incorporado comando: Um comando que executa o próprio shell, O que
pwd
. - Reservado palavra: Uma palavra reservada pela concha, O que
if
eelif
. Eles também são chamados de palavras-chave.
a type
comando nos diz qual categoria qualquer um dos comandos linux pertence. Aqui está um tutorial rápido para entender a saída do comando.
O tipo de comando
Vamos examinar alguns exemplos rápidos, para cada uma das categorias de comando.
tipo data
a date
O comando é um arquivo de disco executável.
tipo ls
a ls
comando é um apelido, envolvendo o subjacente ls
comando para usar o --color=auto
opção padrão.
digite lowdown
a lowdown
O comando é uma função definida pelo usuário que foi configurada no switch usado para investigar esta postagem. Fornece um instantâneo rápido de alguns recursos do sistema. É uma combinação de whoami
, w
, free
e df
.
digite pwd
a pwd
O comando é um comando bash embutido.
digite elif
a elif
comando é uma palavra reservada do shell Bash.
Usando vários comandos
Você pode dar type
vários comandos para identificar ao mesmo tempo.
digite data top ls
A opção -t
Nenhuma das alternativas que type
aceitará ter nomes. Então podemos pegar nosso livro de nomes e batizá-los nós mesmos. Se você pensar sobre ele -t
opção como “conciso”, você não vai errar muito. Reduza as respostas de type
para respostas de uma palavra.
tipo -t data
tipo -t pwd
digite -t lowdown
A opção -a
opção como “todo o mundo”. Lista todos os locais onde o comando está localizado. Observe que esta opção não funciona se você também usar o -p
opção.
Como um exemplo, se você tiver um alias com o mesmo nome do comando subjacente, você pode obter informações sobre o alias e o comando.
digite -a ls
A opção -f
a -f
forças de opção type
para não encontrar funções definidas pelo usuário ou pelo sistema. opção como “opção como”. Observe que se o comando isto é Uma função, type
irá reportar que o comando não pode ser encontrado.
digite -f top
tipo -f lowdown
A opção -P
Se você usar o -P
opção, type
vai apenas pesquisar os diretórios em $ CAMINHO. opção como “rota”. opção como “P” letra maiúscula.
tipo -P data chmod adduser
A opção -p
Se você usar o -p
opção, type
ele só vai responder se o comando for um arquivo do disco rígido. opção como “p” minúsculas.
tipo -p montagem
digite -p ls
digite -p -a ls
type
não dá nenhuma resposta para ls
devido a que ls
um alias e não um arquivo de disco.
Mas se incluirmos o -a
opção para o que type
pesquisar todas as instâncias do ls
comando, lista o arquivo de disco subjacente que o ls
faz uso de apelidos.
Resumo
Isso foi bom e simples, mas iluminando da mesma forma.
opção como “comando”, e deixamos assim. Mas na realidade, os comandos são implementados de várias maneiras no sistema Linux. E type
permite que você descubra qual é.
setTimeout(função(){
!função(f,b,e,v,n,t,s)
{E se(f.fbq)Retorna;n = f.fbq = função(){n.callMethod?
n.callMethod.apply(n,argumentos):n.queue.push(argumentos)};
E se(!f._fbq)f._fbq = n;n.push = n;n.loaded =!0;n.version = ’2.0′;
n.queue =[];t = b.createElement(e);t.async =!0;
t.src = v;s = b.getElementsByTagName(e)[0];
s.parentNode.insertBefore(t,s) } (window, documento,'roteiro',
‘Https://connect.facebook.net/en_US/fbevents.js ’);
fbq('iniciar', ‘335401813750447’);
fbq('acompanhar', ‘PageView’);
},3000);