title: How to execute local python scripts in Jenkins UI
body: <p>I am new to Jenkins, recently want to schedule a job to execute a local python script. I do not have a source control yet so I selected "None" in Source Code Management when creating the job in the Jenkins UI. </p>
  
  <p>I did some research about how to execute python scripts in Jenkins UI and I tried using Python Plugin to execute python scripts as build steps. But it failed. (But actually I don't want to use this Plugin since my script takes input arguments so I think I need to select something like "execute shell" in BUILD field -- I tried but also failed) Could anyone help me to find out how to properly run/call a local python script?</p>
  
  <p>PS: I am also not clear about the Jenkins Workspace and how it works? Will appropriate if someone could clarify it for me.  </p>
  
  <p>Here is the Console output I got after the fail build:</p>
  
  <pre><code>Started by user Yiming Chen
  [EnvInject] - Loading node environment variables.
  Building in workspace D:\Application\Jenkins\workspace\downloader
  [downloader] $ sh -xe C:\windows\TEMP\hudson3430410121213277597.sh
  The system cannot find the file specified
  FATAL: command execution failed
  java.io.IOException: Cannot run program "sh" (in directory     "D:\Application\Jenkins\workspace\downloader"): CreateProcess error=2, The system cannot find the file specified
  at java.lang.ProcessBuilder.start(Unknown Source)
  at hudson.Proc$LocalProc.&lt;init&gt;(Proc.java:245)
  at hudson.Proc$LocalProc.&lt;init&gt;(Proc.java:214)
  at hudson.Launcher$LocalLauncher.launch(Launcher.java:846)
  at hudson.Launcher$ProcStarter.start(Launcher.java:384)
  at hudson.tasks.CommandInterpreter.perform(CommandInterpreter.java:108)
  at hudson.tasks.CommandInterpreter.perform(CommandInterpreter.java:65)
  at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:20)
  at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:779)
  at hudson.model.Build$BuildExecution.build(Build.java:205)
  at hudson.model.Build$BuildExecution.doRun(Build.java:162)
  at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:534)
  at hudson.model.Run.execute(Run.java:1728)
  at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43)
  at hudson.model.ResourceController.execute(ResourceController.java:98)
  at hudson.model.Executor.run(Executor.java:404)
  Caused by: java.io.IOException: CreateProcess error=2, The system cannot find the file specified
  at java.lang.ProcessImpl.create(Native Method)
  at java.lang.ProcessImpl.&lt;init&gt;(Unknown Source)
  at java.lang.ProcessImpl.start(Unknown Source)
  ... 16 more
  Build step 'Execute shell' marked build as failure
  Finished: FAILURE
  </code></pre>