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) .