Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Scheduled powershell script not running dot sourced scripts

Tags:

powershell

I have a main script that is running other scripts and loading the variables from those scripts using dot sourcing. The script runs fine interactively but when I schedule it to run it does not run the scripts I am dot sourcing. Any ideas?

like image 566
jrob24 Avatar asked Jul 07 '10 13:07

jrob24


1 Answers

I had a similar problem: My dot sourced scripts didn't execute when I ran the main script with run as administrator.

It turned out, that the base dir was different, when I ran the script as administrator. Try using the absolute path in your dot sourcing. If it works then, you can work out a better solution, like this:

$subScriptName = "MySubscript.ps1"
$subScriptPath = Join-Path -Path $callingDir -ChildPath $subScriptName

if (Test-Path $subScriptPath)
{
    # use file from local folder
    . $subScriptPath
}
else
{
    # use central file (via PATH-Variable)
    . $subScriptName
}
like image 176
Hinek Avatar answered Oct 10 '22 09:10

Hinek