Eu gostaria de rodar hostname
em uma máquina remota CLIENT1 . Se eu fornecer o nome do host com um caminho UNC diretamente no psexec
comando, ele funcionará bem, como você pode ver abaixo.
psexec \\CLIENT1 -e cmd /c hostname
CLIENT1
cmd exited on CLIENT1 with error code 0.
Se eu optar por usar o parâmetro @filepsexec
de para passar um arquivo de texto com o nome do host, ele não executa o hostname
comando. Ele simplesmente me deixa na cmd
máquina remota e para de executar.
psexec @"c:\temp\hostname.txt" -e cmd /c hostname
Posso executar manualmente hostname
quando estou lá, mas não é isso que estou procurando. Eu tenho que exit
ou Ctrl-C
.
Eu tentei todas as combinações de citações que eu posso pensar e nada funcionou. Isso é um inseto? Alguém pode reproduzir esse comportamento? Estou executando o psexec v2.2 no Windows 7 SP1 (local e remoto), mas também vi o comportamento no psexec v2.11.
Aparentemente, o caminho para o arquivo que contém os nomes de host absolutamente não pode ser citado. Isso significa que seu arquivo de nomes de host é melhor não ter espaços no caminho. Não tenho certeza se isso é intencional ou não, mas com certeza perdi muito tempo perseguindo-o.
MAU
BOA
PsExec \@Filename.txt -s cmd -u user