Curiosamente, meu vsftpd
escreve a string do versino para stdin
. Então você provavelmente precisará fazer um redirecionamento bastante incomum de stdin
para stdout
:
i='/usr/sbin/vsftpd -version 0>&1'
Como descobrir isso: execute-o em strace
(você precisará fazer isso como root) e verifique a string. No meu caso, o log termina assim:
$ strace /usr/sbin/vsftpd -version
...
brk(0) = 0x7f835332d000
brk(0x7f835334e000) = 0x7f835334e000
write(0, "vsftpd: version 3.0.2\n", 22) = 22
exit_group(0) = ?
+++ exited with 0 +++
O primeiro argumento para write()
é o descritor de arquivo (0/1/2 representa stdin / stdout / stderr respectivamente).