Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Batch Datei mit MSG Befehl

Frage Entwicklung Batch & Shell

Mitglied: lukid20

lukid20 (Level 1) - Jetzt verbinden

04.10.2013 um 11:49 Uhr, 4995 Aufrufe, 13 Kommentare, 7 Danke

Hallo Zusammen

Ich habe ein kleines Problem und komme nicht weiter, da ich mit CMD Befehle nicht erfahren bin.

Ich will eine MSG Nachricht absetzen, dass an alle Computer in einer .txt Datei schickt.
Bis jetzt habe ich folgendes zusammen aber mir fehlt irgendwie noch eine Schleife die abarbeitet wird.

set /p nachricht=Nachricht eingeben:
set /p computerliste=%CD%\computer.txt
msg * /SERVER:%computerliste%.fmgruppe.ch %nachricht%

Danke für eure Hilfe

mfg luki
Mitglied: rookie
04.10.2013 um 11:57 Uhr
Hi,

am Besten mit einer FOR-Schleife:

set /p nachricht=Nachricht eingeben:
for /f %f in (Computerliste.txt) do
msg * /SERVER:%f.fmgruppe.ch %nachricht%

So in etwa müsste das dann aussehen.
Bitte warten ..
Mitglied: rubberman
04.10.2013 um 12:09 Uhr
Hallo lukid20.

Frage vorab: Funktioniert für dich der MSG Befehl remote überhaupt? Das heißt, sind die entsprechenden Registryeinstellungen auf jedem involvierten Rechner durchgeführt?

Grüße
rubberman
Bitte warten ..
Mitglied: lukid20
04.10.2013 um 12:19 Uhr
Hallo, ja das habe ich alles schon gemacht und funktioniert
Bitte warten ..
Mitglied: rubberman
04.10.2013, aktualisiert um 12:49 Uhr
Hallo lukid20,

leider kann ich es nicht testen, da auf meiner "Starter" Version MSG gar nicht erst verfügbar ist ...

Mit @Filename kannst du die Datei spezifizieren. Da du die Batchdatei vermutlich als Admin ausführen musst, bietet sich %~dp0 statt %cd% an, um den Pfad zur Datei korrekt rüber zu bekommen.
Etwa so:
01.
@echo off &setlocal 
02.
set /p "nachricht=Nachricht eingeben: " 
03.
set  "computerliste=%~dp0computer.txt" 
04.
msg @"%computerliste%" /SERVER:ServerAnDemDieComputerHängen "%nachricht%"
Grüße
rubberman
Bitte warten ..
Mitglied: lukid20
04.10.2013 um 13:14 Uhr
Ok danke für deine Antwort.

Habe es versucht aber hat nocht nciht ganz geklappt.
Ich habe es noch so angepasst:

@echo off &setlocal


set /p "nachricht=Nachricht eingeben: "
set "computerliste=%~dp0computer.txt"
msg * /SERVER:@"%computerliste%".fmgruppe.ch "%nachricht%"

Aber von wo weis der Befehl, dass er diesen Befehl für jede Zeile (in der computer.txt Datei) einmal ausführen muss?
Bitte warten ..
Mitglied: rookie
04.10.2013 um 13:21 Uhr
Hast du meine Antwort nicht gelesen?
Bitte warten ..
Mitglied: lukid20
04.10.2013 um 13:34 Uhr
Doch gerade eben, das klappt so weit auch. Danke!

Nur habe ich noch ein kleines Problem:

wenn ich es im CMD direkt eingebe funktioniert es.
for /f %f in (Computer.txt) do msg * /SERVER:%f.fmgruppe.ch test

In der Batch Datei leider noch nicht:
@echo off &setlocal
set /p "nachricht=Nachricht eingeben: "
for /f %f in (computer.txt) do
msg * /SERVER:%f.fmgruppe.ch %nachricht%

mache ich noch etwas falsch?
Bitte warten ..
Mitglied: rookie
04.10.2013 um 13:38 Uhr
Schalte mal das Echo wieder ein und lass dir die Ausgaben in eine Datei schreiben: deinebat.bat > ausgabe.txt

In der ausgabe.txt siehst du dann was eigentlich passiert, wenn deine Batch läuft.
Bitte warten ..
Mitglied: rubberman
04.10.2013, aktualisiert um 13:44 Uhr
Du hast doch bestimmt in einer Shell mit Admin Rechten getestet, oder?
Im Batch dann
for /f "usebackq" %%f in ("%~dp0computer.txt") do msg * /SERVER:%%f.fmgruppe.ch %nachricht%
... da der Batch in System32 ausgeführt wird und deine Textdatei nicht findet und die Prozentzeichen der FOR Variable verdoppelt werden müssen.

Grüße
rubberman
Bitte warten ..
Mitglied: lukid20
04.10.2013 um 13:53 Uhr
Ok Super!! hat geklappt Danke vielmals
Bitte warten ..
Mitglied: lukid20
04.10.2013, aktualisiert um 14:00 Uhr
Schlussendlich:

@echo off &setlocal


set /p "nachricht=Nachricht eingeben: "
for /f "usebackq" %%f in ("%~dp0computer.txt") do msg * /SERVER:%%f.fmgruppe.ch %nachricht%


Noch ein kleiner Tipp für die nächsten: Die Batch datei darf nicht msg heissen! Bsp. msg1 geht ;)

Danke!
Bitte warten ..
Mitglied: rubberman
04.10.2013 um 14:13 Uhr
Die Batch datei darf nicht msg heissen!
Kardinalsfehler
Konkret darf eine Batchdatei nie so heißen, wie einer der Befehle die darin verwendet werden (egal welcher).

Grüße
rubberman
Bitte warten ..
Mitglied: DerWoWusste
04.10.2013, aktualisiert 08.10.2013
Und zum Abschluss: Deine Nachricht soll doch sicherlich so lange sichtbar sein, bis sie weggeklickt wird, oder? msg-Nachrichten schließen sich jedoch nach 30 Sekunden von alleine, es sei denn, man benutzt den Schalter /t:0
Bitte warten ..
Ähnliche Inhalte
Entwicklung
gelöst Verzeichnise sichern mit batch datei (Win10) (13)

Frage von Limbach zum Thema Entwicklung ...

Batch & Shell
gelöst Dateinamen mit Batch-Datei ändern - Problem (9)

Frage von fffffuuuuuuuhhhh zum Thema Batch & Shell ...

Batch & Shell
gelöst Teile eines Dateinamens ändern mit Batch Datei (4)

Frage von fffffuuuuuuuhhhh zum Thema Batch & Shell ...

Batch & Shell
gelöst Bestimmte Daten aus CSV per Windows BATCH Datei in .txt Format schreiben lassen. (9)

Frage von freshman2017 zum Thema Batch & Shell ...

Neue Wissensbeiträge
Drucker und Scanner

Samsung SL-M4025ND, firmware update und (kompatible) Tonerkassetten

(1)

Erfahrungsbericht von markus-1969 zum Thema Drucker und Scanner ...

Router & Routing

PfSense auf Supermicro Intel Xeon D-15x8 SoC Bare Bone

Tipp von Dobby zum Thema Router & Routing ...

Windows Server

Exchange 2010 auf Windows Server 2016 und AD

(2)

Tipp von Herbrich19 zum Thema Windows Server ...

KVM

How to: Libvirt Port forwarding

(2)

Anleitung von fundave3 zum Thema KVM ...

Heiß diskutierte Inhalte
Router & Routing
über Vmware auf eine FritzBox mit IPv6 per VPN (17)

Frage von Zockervogel zum Thema Router & Routing ...

Basic
Programmierung von Windows Programmen (9)

Frage von Ghost108 zum Thema Basic ...

Voice over IP
VoIP und DECT an Fritz Accesspoint (7)

Frage von Katosix zum Thema Voice over IP ...