chillministrator
Goto Top

Powershell Befehle aus Batch-Datei falsch überetzt?

Hallo zusammen,

Mein Ziel ist folgendes:

Eine batch Datei soll als erstes die Statuseinträge in eine Datei schreiben. - (Zeile 1-3, dies funktioniert soweit.)

Danach soll mit der Powershell eine Mail versendet werden, deren Inhalt genau aus dem Inhalt der obigen Datei ist ( kein Anhang !).

Soweit nicht weiter Problematisch allerdings soll :

1.) kein zusätzliches Programm installiert werden ( um die Mail beispielsweise direkt aus der Batch zu senden)
2.) kein PS Script erstellt und zum laufen gebracht werden (wäre das einfachste, ist aber nicht erlaubt).


Nun zu meinem Problem:
direkt in der Powershell ausgeführt passiert ganz genau das was passieren soll, alles funktioniert bestens.
Starte ich jedoch die Batch funkioniert die Variable nichtmehr.
Habs auch ohne Pipe versucht, allerdings blieb auch hier der Erfolg aus.

Hier ein kleiner Einblick

* dfsrdiag replicationstate /member:xxx0 > mail.txt

* dfsrdiag backlog /xxxx0 /rmem:xxx0 /xxxl\gexxx\AS14xxx /rfname:AS14xxx >> mail.txt

* dfsrdiag backlog /xxx0 /rmem:xxx0 /xxx\gexxx\AS14xxx /rfname:AS14xxx >> mail.txt

* dfsrdiag replicationstate /member:xxx0 >> mail.txt


* powershell.exe -command [string]$dat= "${c:\mail.txt}" | send-mailmessage -from 'administrator@xxx.de' -to 'yyyy@xxx.de' -Body $dat  -SMTPServer 128.x.x.x -Subject 'Replikationsstatus'   



Grüße

Content-Key: 304436

Url: https://administrator.de/contentid/304436

Printed on: April 18, 2024 at 21:04 o'clock

Mitglied: 129148
Solution 129148 May 13, 2016 updated at 11:09:15 (UTC)
Goto Top
Klar, dir fehlen ja auch die Anführungszeichen die das gesamte Kommando umschließen damit spezielle Zeichen nicht von der Batch interpretiert werden.
powershell.exe -Executionpolicy ByPass -command "send-mailmessage -from 'administrator@xxx.de' -to 'yyyy@xxx.de' -Body (gc 'c:\mail.txt' | out-string) -SMTPServer 128.x.x.x -Subject 'Replikationsstatus'"  
Member: Chillministrator
Chillministrator May 13, 2016 at 11:21:59 (UTC)
Goto Top
Lach,

zu geil echt....
die Variante hab ich tatsächlich auch schon probiert, allerdings eben auch nicht innerhalb der Anführungszeichen....

Asche über mein Haupt!

Riesen Dank für die schnelle Hilfe