danieldestro 27 de out. de 2006
E isso significa que… ???
ZehOliveira 27 de out. de 2006
Acho que você teria que iniciar o processo chamando o binário do shell, passando o nome do comando como parametro.
Talvez algo do tipo:
Runtime .getRuntime () .exec ( "/bin/bash ulimit -n" ) ;
danieldestro 27 de out. de 2006
E quanto tem que executar algo assim:
for iq in ` netstat -na | grep ESTA | sort -k5 | cut -b22-38 | sort -u ` ; do echo $ iq ; a = ` netstat -na | grep $ iq | wc -l ` ; echo "IP:$iq Conexoes: " $ a ; done | sort -k2r | grep -v 172 . 23 . | head -n20
???
thingol 27 de out. de 2006
De modo geral, para saber se um comando é do shell, ou se ele é um executável, use o comando type. Exemplo:
linux : ~ # type ulimit
ulimit is a shell builtin
linux : ~ # type mv
mv is / bin / mv
linux : ~ # type ls
ls is aliased to ` ls $ LS_OPTIONS '
Esse comando também funciona no Solaris e em outras versões do Unix. No Solaris 10 - Intel:
# type ulimit
ulimit is a shell builtin
# type mv
mv is / usr / bin / mv
# type ls
ls is / usr / bin / ls
ZehOliveira 27 de out. de 2006
danieldestro:
E quanto tem que executar algo assim:
for iq in ` netstat -na | grep ESTA | sort -k5 | cut -b22-38 | sort -u ` ; do echo $ iq ; a = ` netstat -na | grep $ iq | wc -l ` ; echo "IP:$iq Conexoes: " $ a ; done | sort -k2r | grep -v 172 . 23 . | head -n20
???
Coloca isso em um arquivo de script e executa esse arquivo:
/bin/bash nome_do_arquivo_que_criou.sh
danieldestro 27 de out. de 2006
Valeu galera… ajudaram muito mesmo.
O admin falou há pouco que o ambiente mudou de solaris para linux. Eu nçao sabia. Por isso parou de funfar.
As idéias do ZehOliveira e JOMI funcionaram perfeitamente.
jormiz 27 de out. de 2006
Nao sei se é o seu caso, mas tive um problema semelhante na empresa e descobri que vc tem que passar os comandos separados como por exemplo:
String cmds[] = new String[3];
cmds[0] = “/bin/ksh”;
cmds [1] = “-c”;
cmds [2] = cmd;
Process process = Runtime.getRuntime().exec(cmds);
onde cmd é o comando. Dava erro quando tentava executar isso:
cp " + arquivoCompactado + ".Z " + dirEntrada, por exemplo
Colocando no array, funcionou…