Estou um pouco fora do meu departamento aqui, então, por favor, seja fácil comigo. Eu instalei o Openssh no Linux vm e no Windows vm no vmware. Tanto quanto eu posso dizer isso implementa alguma forma de cygwin no windows. Eu posso ssh para a pasta do usuário:
C:\Program Files\OpenSSH\home\ATV>
, assim:
ssh -p22 -t ATV@DESKTOP-CGHF9HU bash
ou assim:
ssh -p22 -t ATV@DESKTOP-CGHF9HU cmd OpenExcelFile.vbs
ou similar com cmd ou sh. Eu posso cd e DIR para o meu conteúdo de corações, e eu posso executar .exe, scripts que você nomeia. É só que todos começam como processos em segundo plano.
Eu quero ser capaz de acionar a execução REAL de aplicativos em primeiro plano.
Noções básicas, eu posso acessar a linha de comando e meu sistema operacional Windows através do meu terminal linux. Eu posso dir sistema de arquivos e cd tudo lá. Mas eu não posso executar qualquer coisa como aplicativo de primeiro plano, apenas como processos em segundo plano, e eu gostaria de acionar a abertura real do Microsoft Excel no windows vm gui?
EDITAR: O problema é a exibição .... Eu posso iniciar o Microsoft Excel e vê-lo em execução em processos em segundo plano. Então, eu acho que a questão seria como ser capaz de:
Agora eu estou transferindo o "arquivo" via scp do python
os.system('scp CalculatedOutput/Opera.csv ATV@DESKTOP-CM5F9HU:')
os.system('ssh -t ATV@DESKTOP-CGHF9HU RunIf.vbs')
, tentando abrir o script pelo ssh.
Eu também consegui encontrar a versão 1.1 do winexe, mas parece que há muitos problemas com esse cliente. Eu vasculhei a rede, mas nenhuma combinação da sintaxe parece funcionar:
os.system('./winexe --user=\DESKTOP-CGHF9HU/ATV%Mypassword //windows.domain.local --interactive=1 --uninstall --system OpenExcelFile.vbs')
Meu palpite seria que algumas pessoas saibam como fazer isso. Por que você iria querer? A menos que você seja um purista unix, eu acho que é óbvio ...
Eu não tive a oportunidade de desistir disso, então continuei cavando. Como mencionado nos comentários abaixo, existem, de fato, restrições de acesso, e eu acho que a Microsoft não gostaria de permitir o acesso ao seu sistema operacional. No entanto, visto que suas outras configurações do Windows permitem o compartilhamento e sua sintaxe está correta:
./winexe -U ATV%password //DESKTOP-CGHF9HU 'cmd.exe'
, você pode editar seu registro de acordo com o link , e o winexe1.1 permitirá o acesso. Agora eu sei que isso não é seguro, mas todas as minhas VMs estão fisicamente sob meu controle, então eu não me importo.
Continuar com o problema ainda persiste, já que meu código acima realmente dá acesso à linha de comando do Windows, mas ainda abre aplicativos em segundo plano. Eu não posso trazê-los para o primeiro plano (como em -fg), e o propósito é derrotado. Pergunta permanece, como faço para mostrar? Eu posso fazer a mesma coisa com o openssh e cygwin, então qual é o propósito do aplicativo winexe?
Editar2: Bem, eu não vou encerrar aqui, mas A melhor maneira de fazer isso no momento, é transferir o arquivo em questão, depois rodar o script "if (file exists)" ao mesmo tempo sobre o ssh (De python):
os.system('scp CalculatedOutput/Opera.csv ATV@DESKTOP-CGHF9HU:')
os.system('ssh -p22 -t ATV@DESKTOP-CGHF9HU "cscript RunIf.vbs"')
O vbscript para automatizar o Excel é executado automaticamente em segundo plano com o Excel, e eu acho que o fato de eu precisar abrir manualmente o Excel para visualização é algo com o qual terei que conviver por enquanto. Essa foi a minha pergunta original, então ainda deixarei isso sem resposta.
Tags openssh windows powershell cygwin ubuntu