Como testar se o arquivo é um soquete na linha de comando?

1

Como intitulado. Existe uma maneira de testar na linha de comando se um arquivo é um soquete? Por teste, quero dizer se posso dizer a partir do stdout, e não de forma programática, como em um script bash, embora esteja tudo bem também. Btw, eu estou em um Mac (de vez em quando os comandos são diferentes). Obrigado!

    
por ceiling cat 20.10.2014 / 00:58

2 respostas

1

Um soquete tem "s" no primeiro sinalizador de permissão:

ls -la X0 
srwxrwxrwx 1 paul hum 0 Jul 14 14:48 X0

Você pode testar no bash com a opção -S :

if  [ -S /my/file.socket ] ; then
   # stuff
fi

Ou o comando find pode ser usado para encontrar qualquer soquete em um diretório:

find  . -type s
    
por 20.10.2014 / 01:08
0

teste -S / var / run / some_socket_file

se $? == 0, este arquivo é um arquivo de soquete.

    
por 12.01.2017 / 11:39