O que este comando significa ls -l test.conf -rw-r--r-- l root root?

O que este comando significa ls -l test.conf -rw-r--r-- l root root?
root@ubuntu:/etc/openvpn# ls -l test.conf -rw-r--r-- l root root 791 Mar 20 09:23 test.conf

O que significa o comando acima?

Responder1

Isso não é um comando. Istocontémum comando.

É um prompt, seguido por um comando, seguido pela saída do comando. O comando em si é:

ls -l test.conf

Esse comando exibe informações sobre o arquivo chamado test.conflocalizado nodiretório atual.O lscomandoexibe (oulistas) informações sobre arquivos. O -lsinalizador faz com que ele exiba as informações em formato longo, em vez de apenas mostrar o nome do arquivo.

( lssem um sinalizador como -lé mais frequentemente usado para listar vários arquivos ou determinar se um arquivo existe, mas pode ser usado com um arquivo que existe; por padrão no Ubuntu, a emissão será destacadals filenamefilenamede uma forma que mostre que tipo de arquivo é, por exemplo, ele usará uma determinada cor se for um diretório, outra se estiver marcado como executável.)

A saída é:

-rw-r--r-- l root root 791 Mar 20 09:23 test.conf

Isso significa o arquivo:

  • não é umdiretório( -rw-r--r--não começa com d)
  • é não-setuide não-setgid (no sin -rw-r--r--) e não-pegajoso(não t)
  • é legível e gravável por seu proprietário ( rw-para proprietário), mas somente legível por outros usuários ( r--para membros do grupo, r--novamente para outros) — consultea documentação da comunidade sobre permissões
  • écontroladopelo usuárioroot(com rootcomo seugrupoidentidade também)
  • é 791bytesemtamanho
  • relata que foi modificado (ou criado) pela última vez em 20 de março às 9h23
  • tem o nometest.conf

Ocomeçoda linha é um prompt; isso é o que é exibido ao usuário em um shell para notificá-lo de que ele pode inserir um comando. Os prompts geralmente são configurados para fornecer informações úteis ao usuário. Aqui o prompt é:

root@ubuntu:/etc/openvpn#

Isso significa que o usuário atual é root, o nome do host da máquina é ubuntu(o que geralmente significa que este é umCD/DVD/USB ao vivosistema, mas alguém também pode nomear sua máquina ubuntuem um sistema instalado) e o diretório atual é /etc/openvpn(que é onde os dados de configuração paraOpenVPNsão armazenados, veja também oDocumentação OpenVPN do Ubuntu).

O #caracter indica que este é umsuperusuárioshell (o que é esperado, pois é de propriedade do root,o superusuário); caso contrário, teria sido $(mas observe que esta convenção não é seguida universalmente e alguns shells são padronizados, %o que não indica nada sobre as capacidades do shell).

Responder2

Acho que você tem um mal-entendido com oestruturadessa linha.

A primeira frase está dizendoo usuárioem um determinadocomputadorisso está no mencionadopasta:

root@ubuntu:/etc/openvpn#

Aqui você tem:

  1. usuário = "root"
  2. nome da máquina = "ubuntu"
  3. location = "/etc/openvpn"

e os separadores correspondentes entre eles são @, :e#

O comando, que fica depois do último separador ( #), é:

ls -l test.conf

A saída que você obtém é:

-rw-r--r-- l root root 791 Mar 20 09:23 test.conf

informação relacionada