Top-Themen

Aktuelle Themen (A bis Z)

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 IF-Abfrage und Ausführungsort-Feststellung in Batch

Mitglied: zensbert

zensbert (Level 1) - Jetzt verbinden

23.02.2008, aktualisiert 13:55 Uhr, 6120 Aufrufe, 4 Kommentare

Hallo,
Ich habe eine Batch die Einen Registrywert ausliest, der Wert sieht ziemlich genau so aus:
"C:\PROGRA~1\MICROS~2\OFFICE11\OUTLOOK.EXE" -c IPM.Note /m "%1" der steht dann in der Variable.
Jedoch hätte ich dann gerne dass er einfach eine textausgabe macht wenn er den wert in die variable kriegt z.b.=Outlook 2003.

Desweiteren würde ich diese Batch dann gern auf einem USB Stick ausführen, die batch soll immer ihren ausführungsort erkennen,
z.b. liegt sie auf dem stick in dem ordner m:\software hätte ich gerne M:\ als variable.. weil an einem anderen pc kann das ja statt m ja auch ein anderer laufwerksbuchstabe sein.

wenn jemand ne idee hat würde ich mich ziemlich freuen, danke..

gruß, thomas
Mitglied: bastla
23.02.2008 um 10:50 Uhr
Hallo chizophren!

Zunächst zum Ausführungsort: Dieser steht in der Variable %0 zur Verfügung und kann wie folgt verwendet werden (zum Nachlesen der Details: "for /?"):
01.
@echo off & setlocal 
02.
echo Batch gestartet als: %0 
03.
 
04.
echo        von Laufwerk: %~d0 
05.
echo      aus dem Ordner: %~p0 
06.
echo  daher aus dem Pfad: %~dp0 
07.
 
08.
echo      mit Dateinamen: %~n0 
09.
echo         und Dateiyp: %~x0 
10.
 
11.
echo    daher Gesamtpfad: %~f0
Du wirst also vermutlich "%~dp0" verwenden wollen.
Zum Thema "Textausgabe": Um den Inhalt einer Variablen auszugeben, müsste man/frau den Variablennamen kennen. Sollte dieser etwa "Var" lauten, wäre die entsprechende Anweisung:
01.
echo %Var%
Soferne die Ausgabe nicht angezeigt, sondern in eine Datei geschrieben werden soll:
01.
echo %Var%>"Lw:\Pfad\Dateiname.Dateityp"
Die verwendeten Anführungszeichen sind nur dann unbedingt erforderlich, wenn im Pfad oder im Dateinamen Leerzeichen enthalten sind; es schadet aber nicht, sie auf jeden Fall zu setzen.

Durch den letzten Befehl würde eine neue Datei erstellt. Soll nur ene bereits vorhandene Datei um eine weitere Zeile ergänzt werden, ist ">>" zu verwenden, also:
01.
echo %Var%>>"Lw:\Pfad\Dateiname.Dateityp"
Eine Idee hätte ich übrigens auch noch:
Poste bitte bei Deiner nächsten Fragestellung schon vorhandenen Code bzw gib etwas detailliertere Informationen (hier: Variablenname, oder, was Du mit "If" vorhattest) ...

Grüße
bastla
Bitte warten ..
Mitglied: zensbert
23.02.2008 um 11:59 Uhr
hi bastla und danke für die schnelle antwort^^
wie man in eine variable schreibt bzw. abspeichert dass wusste ich, da habe ich mich wohl besch°° ausgedrückt, ich meinte folgendes:
1. reg wert auslesen und variable zuweisen (soweit ok)
2. wenn in der variable der inhalt ist dann sag das..
zb. var mit inhalt a, dann echo b,
hab dafür auch sachen gefunden, jedoch habe ich das problem dass der regwert der in der variable steht Anführungs- und leerzeichen drin hat, dort bricht meine batch dann ab, der inhalt der var ist zb: "C:\PROGRA~1\MICROS~2\OFFICE11\OUTLOOK.EXE" -c IPM.Note /m "%1"
er soll aber halt nich das ausgeben, sondern Outlook 2003..

Thx, Thomas
Bitte warten ..
Mitglied: bastla
23.02.2008 um 12:58 Uhr
Hallo chizophren!

Wenn Du als Ergebnis "Outlook 2003" haben willst, hängt das doch eigentlich nur vom Teil "OFFICE11" ab - daher könntest Du es zB so versuchen:
01.
echo %Var%|findstr "OFFICE11">nul && echo Outlook 2003
Das "&&" sorgt dafür, dass die folgende Anweisung nur ausgeführt wird, wenn der vorige Befehl keinen Fehler verursacht (= keinen Errorlevel <> 0 geliefert) hat - das Gegenstück dazu wäre übrigens "||".

"OFFICE11" sollte zwar eigentlich immer in Großbuchstaben geschrieben sein, aber um eine Fehlerquelle auszuschließen, kannst Du dem "findstr" noch ein "/i" spendieren ...

Grüße
bastla
Bitte warten ..
Mitglied: zensbert
23.02.2008 um 13:55 Uhr
das werd ich probieren, vielen dank^^
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Batch Programmierung IF Abfragen
gelöst Frage von PathoeBatch & Shell8 Kommentare

Hallo zusammen, ich möchte gerne einige IF-Abfragen in einer Batch programmieren, was allerdings nicht so möchte wie ich. Er ...

Windows 7
If Abfrage in Batchdatei
gelöst Frage von sammy65Windows 76 Kommentare

Hallo miteinander, ich möchte eine cfg.Datei in ein Verzeichnis kopieren. Da ich sowohl Windows 7 32 bit und 64 ...

Batch & Shell

Powershell IF Abfrage Vergleichsoperatoren

gelöst Frage von PeterzBatch & Shell4 Kommentare

Hallo, ich möchte in einer IF Abfrage Vergleichsoperatoren verknüpfen und bekomme es nicht hin. Es sollte so aussehen: IF ...

Entwicklung

Verschachtelte IF Abfrage Powershell

gelöst Frage von HanutaEntwicklung19 Kommentare

Hallo Zusammen, habe ein Programm, das es in verschiedenen Versionen gibt 4.5.0 4.5.3 4.6.2 4.6.3 Das Programm soll überall ...

Neue Wissensbeiträge
Erkennung und -Abwehr

Neue Sicherheitslücke Foreshadow (L1TF) gefährdet fast alle Intel-Prozessoren

Information von Frank vor 7 StundenErkennung und -Abwehr1 Kommentar

Eine neue Sicherheitslücke, genannt Foreshadow (alias L1TF) wurde auf der Usenix Security 18 von einem Team internationaler Experten veröffentlicht. ...

Vmware
VMware Updates gegen L1 Lücke
Information von sabines vor 14 StundenVmware

Für die Vmware Produkte vCenter Server, ESXi, Workstation und Fusion stehe Updates bereit um die L1 Lücke zu schließen. ...

Drucker und Scanner
HP-MF-Drucker per Fax angreifbsr
Information von Lochkartenstanzer vor 2 TagenDrucker und Scanner3 Kommentare

Endlich eine sinnvolle Verwendung für Faxe: Damit kann man offensichtlich den Drucker übernehmen. lks

Router & Routing

Das pfSense Buch ist jetzt für jeden kostenlos zu beziehen

Tipp von magicteddy vor 3 TagenRouter & Routing2 Kommentare

Bisher war das Buch nur für zahlende Unterstützer verfügbar, jetzt steht für Jedermann kostenlos zur Verfügung. Siehe auch The ...

Heiß diskutierte Inhalte
Microsoft
VPN Verbindung kann nicht aufgebaut werden
Frage von AlexderITlerMicrosoft35 Kommentare

Hallo, Ich möchte an einem unserer PCs in unserer Tochterfirma eine VPN zu unserem Netzwerk einrichten. Das schlägt allerdings ...

Windows Server
Domäne einsilbig mit nur einem Namen benannt - sowie AD und MX auf einer VM Kardinalsfehler?
Frage von TomTestWindows Server27 Kommentare

Hallo liebe Freunde gepflegter Probleme, seit kurzem soll ich eine Domäne verwalten die zuvor von einem IT-Dienstleister erstellt und ...

Datenbanken
MySQL Datenbank Import Aufgabe für mehrere .csv dateien
gelöst Frage von Marcel1989Datenbanken19 Kommentare

Hi, ich komm nicht weiter. Ich hab auf einem Windows Server 2012 r2 eine MariaDB/MySQL laufen. Nun soll diese ...

DNS
Gibt es eine Art DNS Proxy?
Frage von icepietDNS15 Kommentare

Hallo Nerds, Ich würde gerne folgendes machen: ts.domain.de:3389 soll auf 1.2.3.4:3389 auflösen ts2.domain.de:3389 soll auf 1.2.3.4:3390 auflösen Gibt es ...