CoolAce 17 Geschrieben 1. Februar 2013 Melden Teilen Geschrieben 1. Februar 2013 Hallo zusammen, ich bin echt gefrustet und komm nicht drauf, folgender code $Datum = $Datum.tostring("yyyyMMdd") + ".TXT"$O = "C:\tmp\test" + $Datum Copy-Item -Path \\filer\datei.txt -Destination $O wenn ich mit dem debugger drüber geh zeit er an das er für $O nicht "C:\tmp\test" sondern $= an Was mach ich falsch Gruß Coolace Zitieren Link zu diesem Kommentar
Dukel 454 Geschrieben 1. Februar 2013 Melden Teilen Geschrieben 1. Februar 2013 Woher kommt $datum? Versuche mal: $datum = get-date -f "yyyyMMdd" $o = 'c:\tmp\test\' + $datum + '.txt' #Alternativ: $o = "c:\tmp\test\$datum.txt" Copy-Item -Path \\filer\datei.txt -Destination $o Zitieren Link zu diesem Kommentar
CoolAce 17 Geschrieben 1. Februar 2013 Autor Melden Teilen Geschrieben 1. Februar 2013 geht leider auch nicht. Im Debugger seh ich das er die Variable $o richtig beschreibt aber der Copy-Item liest die nicht aus Zitieren Link zu diesem Kommentar
Dukel 454 Geschrieben 1. Februar 2013 Melden Teilen Geschrieben 1. Februar 2013 Mach mal die ganze Zeile Copy-Item -Path \\filer\datei.txt -Destination $o in Anführungszeichen: "Copy-Item -Path \\filer\datei.txt -Destination $o" Was schreibt er dann in die Konsole? Prinzipiell kann man Variablen dort nutzen. Zitieren Link zu diesem Kommentar
CoolAce 17 Geschrieben 1. Februar 2013 Autor Melden Teilen Geschrieben 1. Februar 2013 Danke für deine hilfe. Copy-Item -Path \\filer\datei.txt -Destination ist die Ausgabe des Debugger, d.h. er ignoriert die Variable dann ganz Zitieren Link zu diesem Kommentar
Dukel 454 Geschrieben 1. Februar 2013 Melden Teilen Geschrieben 1. Februar 2013 Und ohne debugger in einer normalen Powershell Session? Zitieren Link zu diesem Kommentar
CoolAce 17 Geschrieben 1. Februar 2013 Autor Melden Teilen Geschrieben 1. Februar 2013 OK, jetzt läuft es ich hatte mich in der varibale verschrieben und mit der richtigen Varibale und den hochkomma passt es. Ich hätte noch eine Frage, wie krieg ich das in den Aufgabenplanungsdienst bei folgender Situation 1) Rechner mit Powershell und Unsigned Execution Policy 2) Fileserver \\file\skript\meinskript.ps1 Wie kann ich das in der Aufgabenplanung ausführen lassen, hab es so versucht powershell.exe -command "& {\\file\skript\meinskript.ps1}" und als .cmd gespeichert diese im Taskplaner eingebunden, aber das funktioniert nicht wirklich so richtig Wie macht man es richtig ? Zitieren Link zu diesem Kommentar
Dukel 454 Geschrieben 1. Februar 2013 Melden Teilen Geschrieben 1. Februar 2013 Was heißt funktioniert nicht richtig? Gibts eine Fehlermeldung? Führt er das Script nicht aus? Zitieren Link zu diesem Kommentar
CoolAce 17 Geschrieben 1. Februar 2013 Autor Melden Teilen Geschrieben 1. Februar 2013 sorry, er führt es aus wenn ich den Task starte und sagt auch erfolgreich aber es passiert nichts. Zitieren Link zu diesem Kommentar
Dukel 454 Geschrieben 1. Februar 2013 Melden Teilen Geschrieben 1. Februar 2013 Wird der Task gestartet, wenn du ihn manuell startet? Was steht in meinskrip.ps1 ? Zitieren Link zu diesem Kommentar
CoolAce 17 Geschrieben 1. Februar 2013 Autor Melden Teilen Geschrieben 1. Februar 2013 in meinskript.ps1. steht der Code von hier oben, sprich der copy jop der einen datei Zitieren Link zu diesem Kommentar
Dukel 454 Geschrieben 1. Februar 2013 Melden Teilen Geschrieben 1. Februar 2013 Mach er es, wenn du powershell.exe -command "& {\\file\skript\meinskript.ps1}" manuell aufrufst? Erstelle einen Task mit Programm: powershell.exe und Argumente: -command "& {\\file\skript\meinskript.ps1}" Funktioniert es, wenn du diesen Task manuell aufrufst? Zitieren Link zu diesem Kommentar
CoolAce 17 Geschrieben 1. Februar 2013 Autor Melden Teilen Geschrieben 1. Februar 2013 der task wird erfolgreich ausgeführt, allerdings ist mir aufgefallen wenn ich das commando aus der cmd aufrufe powershell.exe -command "& {\\filer\my.ps1}" das es auch nicht geht Zitieren Link zu diesem Kommentar
Dukel 454 Geschrieben 1. Februar 2013 Melden Teilen Geschrieben 1. Februar 2013 Dann schaue, dass deine Befehlszeile erst mal richtig läuft. Ich mache das folgendermaßen: powershell.exe -nologo -noprofile -command "& '\\pfad\zur\ps1' parameter1" Zitieren Link zu diesem Kommentar
CoolAce 17 Geschrieben 1. Februar 2013 Autor Melden Teilen Geschrieben 1. Februar 2013 cool, damit klappt es auch bei mir. Echt vielen Dank für deine Hilfe und Geduld Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.