0

I have a python script written using paramiko and pysphere.this script is in linnux box.i have some powershell scripts on windows machine which i have to run one after the other(after each script ends obviously),but the point here is through my pythonscript it is not running the powershell scripts on windows machine.Kindly help. PS;i have to run python script fromlinux and powershell scriupts on windows. Here is a snippet of code for running powershell scripts:

target_vm1 = connect_Esxi_Server(return_list[0])

print "Again connected to vm:" + return_list[0]

target_vm1.login_in_guest(vmUser,vmPass)

list_scripts = target_vm1.list_files(VM_SCRIPT_LOCATION)

for f in list_scripts:

    size = f['size']
    **if size <> 0:**

        paths = f['path']

        print paths

        #for all_scripts in paths:
        *****print "script running is :" , paths*****
        path_l = os.path.join(VM_SCRIPT_LOCATION + '\\'+ paths)
        *****print path_l*****
        run_script =            
subprocess.Popen([r'c:\\Windows\\system32\\WindowsPowerShell\\v1.0\\powershell.exe',". path_l"], shell=True)

        result = run_script.wait()
        print "result is:", result

I doubt whether subprocess will work.

Please note that the bold prints given above are giving the correct script to run.there are many powershell scriptsinside the fo;der,so looping throught it and running each one of them.

Any help would be appreciated,this thing is eating my heads off.....argghhhhhhhh..

Cheers, NJ

1 Answer 1

2

I run powershell commands directly using paramiko:

import paramiko 

ssh = paramiko.SSHClient()

ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())

ssh.connect('10.10.0.2', username='vipul', password='password')

cmd = "powershell -InputFormat none -OutputFormat text echo Hello"

stdin, stdout, stderr = self.ssh.exec_command(cmd)

print stdout.readlines()

Here 10.10.0.2 is my windows machine. Using cygwin sshd server for ssh.

Sign up to request clarification or add additional context in comments.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.