
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.conf
localizado nodiretório atual.O ls
comandoexibe (oulistas) informações sobre arquivos. O -l
sinalizador faz com que ele exiba as informações em formato longo, em vez de apenas mostrar o nome do arquivo.
( ls
sem 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 filename
filename
de 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 comd
) - é não-setuide não-setgid (no
s
in-rw-r--r--
) e não-pegajoso(nãot
) - é 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ário
root
(comroot
como seugrupoidentidade também) - é 791bytesemtamanho
- relata que foi modificado (ou criado) pela última vez em 20 de março às 9h23
- tem o nome
test.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 ubuntu
em 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:
- usuário = "root"
- nome da máquina = "ubuntu"
- 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