O diretório / dev contém os dispositivos do sistema. / dev / stdin é um link. Para o que isso aponta?

2

Estou brincando com o terminal e encontrei stdin@ em / dev. Várias perguntas aqui.

1) O que um item com um símbolo @ no final significa / sugere? Quando é usado?

2) Como a pergunta sugere, é um link. Qual comando posso usar para descobrir para que isso aponta?

    
por Mas 06.03.2017 / 19:39

1 resposta

3
  1. O @ indica um link simbólico. Seu ls é provavelmente um alias para ls -F (e sinalizadores adicionais). Se você executar unalias ls ou executar explicitamente /bin/ls , não verá as decorações do tipo de arquivo.
  2. Execute ls -l /dev/stdin para ver o destino do link simbólico.
  3. No Linux, /dev/stdin links para /proc/self/fd/0 ( /dev/stdin é um link para /dev/fd/0 e /dev/fd é um link para /proc/self/fd ). /proc/self é um diretório em procfs onde o kernel expõe informações sobre o processo de chamada (ou seja, cada processo obtém informações sobre si mesmo quando lê de /proc/self ). O subdiretório fd contém uma entrada para cada descritor de arquivo aberto no processo, que é um link simbólico (um tanto mágico) apontando para o arquivo que o processo abriu.
por 06.03.2017 / 19:44