lsof não mostra meus arquivos djvu

1

Estou tentando imprimir os nomes dos arquivos djvu que estão atualmente em execução em okular ou atril , mas quando eu faço lsof | grep ".djvu$" , não recebo nenhuma saída no terminal, onde o mesmo comando funciona para pdf files.

    
por Ritajit Kundu 13.11.2018 / 18:10

1 resposta

0
  • se o aplicativo estiver sendo executado como um usuário diferente, você precisará de sudo :

    sudo lsof | grep ".djvu$"
    
  • se parte da extensão do arquivo for capital, você precisará -i in grep para ignorar maiúsculas e minúsculas:

    sudo lsof | grep -i ".djvu$"
    
  • o ponto no início de .djvu$ irá corresponder a qualquer caractere (embora isso provavelmente não cause falsos positivos no seu caso); o que você provavelmente quer dizer é \.djvu$

  • Eu recomendo colocar expressões regulares em aspas simples, em vez de aspas duplas, porque o sinal de dólar tem um significado especial para o shell do Linux:

    sudo lsof | grep -i '\.djvu$'
    
  • (atualizado de ps para pgrep graças ao comentário do qubert) se o aplicativo ler os arquivos na memória e depois fechar, o lsof não o verá, mas ps (lista de processos) será; pgrep é a ferramenta adequada para pesquisar por processos em execução; tente:

    pgrep --list-full --full --ignore-case '\.djvu'
    
por 13.11.2018 / 18:23

Tags