function! checkifrunning(mystring)
if !system('pgrep "' . a:mystring . '"')
" --do something--
endif
endfunction
Tecnicamente, !
opera em Numbers , e converte uma String para um Number primeiro se receber uma String. No entanto, se não houver nenhum processo em execução, a saída de pgrep
estará vazia, o que quando convertido em um Número é 0. Se houver processo em execução, a conversão em um Número não será zero.
Em vez de 'pgrep "' . a:mystring . '"'
, você também pode fazer 'pgrep ' . shellescape(a:mystring)
.