Я здесь немного не в себе, поэтому, пожалуйста, будьте осторожны со мной. Я установил Openssh на Linux VM и Windows VM в VMware. Насколько я могу сказать, это реализует некоторую форму Cygwin на Windows. Я могу SSH к папке пользователя:
C:\Program Files\OpenSSH\home\ATV>
, как это:
ssh -p22 -t ATV@DESKTOP-CGHF9HU bash
или вот так:
ssh -p22 -t ATV@DESKTOP-CGHF9HU cmd OpenExcelFile.vbs
или похожий с cmd или sh. Я могу использовать CD и DIR для своего сердца, и я могу запускать .exe, скрипты, которые вы называете. Просто они все начинаются как фоновые процессы.
Я хочу, чтобы иметь возможность запускать фактическое выполнение приложений на переднем плане.
Основы этого, я могу получить доступ к командной строке и моей системе Windows OS через мой терминал Linux. Я могу dir файловой системы и CD все там. Но я не могу запустить что-либо как приложение переднего плана, только как фоновые процессы, и я хотел бы вызвать фактическое открытие Microsoft Excel в Windows vm GUI?
РЕДАКТИРОВАТЬ: проблема в дисплее .... Я могу запустить Microsoft Excel и увидеть, что он работает в фоновых процессах. Поэтому я думаю, что вопрос будет в том, как уметь:
- Либо запустите приложение на переднем плане через SSH.
- Или вызвать скрипт, который откроет Excel в "окне".
Прямо сейчас я передаю "файл" через scp из python
os.system('scp CalculatedOutput/Opera.csv ATV@DESKTOP-CM5F9HU:')
os.system('ssh -t ATV@DESKTOP-CGHF9HU RunIf.vbs')
, пытаясь открыть скрипт через ssh.
Мне также удалось найти версию 1.1 winexe, но, похоже, у этого клиента много проблем. Я искал сеть, но никакие комбинации синтаксиса, кажется, не работают:
os.system('./winexe --user=\DESKTOP-CGHF9HU/ATV%Mypassword //windows.domain.local --interactive=1 --uninstall --system OpenExcelFile.vbs')
Я думаю, что некоторые люди знают, как это сделать (взломать). Почему вы хотели бы? Если вы не пуник Unix, я думаю, это очевидно ...
У меня не было возможности отказаться от этого, поэтому я продолжал копать. Как упомянуто в комментариях ниже, действительно есть ограничения доступа, и я думаю, Microsoft не захочет разрешить доступ к их ОС. Тем не менее, видя, как другие настройки Windows позволяют совместное использование, и ваш синтаксис правильный:
./winexe -U ATV%password //DESKTOP-CGHF9HU 'cmd.exe'
Вы можете отредактировать свой реестр согласно https://tommynation.com/enable-remote-access-administrative-shares-windows-10/ , и winexe1.1 действительно предоставит вам доступ. Теперь я знаю, что это небезопасно, но все мои виртуальные машины находятся под моим физическим контролем, поэтому я не забочусь.
Переход к проблеме все еще сохраняется, поскольку мой код выше фактически дает вам доступ к командной строке Windows, но по-прежнему открывает приложения в фоновом режиме. Я не могу вывести их на первый план (как в -fg), а цель побеждена. Остается вопрос, как мне заставить их отображать? Я могу сделать то же самое с openssh и cygwin, так какова цель применения winexe?
Edit2: Хорошо, я не собираюсь называть это завершением здесь, но лучший способ сделать это на данный момент, это передать рассматриваемый файл, а затем запустить сценарий «если (файл существует)» одновременно через ssh (из питона):
os.system('scp CalculatedOutput/Opera.csv ATV@DESKTOP-CGHF9HU:')
os.system('ssh -p22 -t ATV@DESKTOP-CGHF9HU "cscript RunIf.vbs"')
VBScript для автоматизации Excel автоматически запускается в фоновом режиме вместе с Excel, и я предполагаю, что мне придется пока жить с тем, что мне нужно вручную открыть Excel для визуализации. Это был мой первоначальный вопрос, поэтому я все равно оставлю этот вопрос без ответа.