Pfad-Variablen verknüpfen bzw. zusammenführen
Hallo! Ich möchte zwei Variablen, die jeweils einen Teil eines Pfades beinhalten, zu einem neuen Pfad zusammenführen.
Hier mal ein Beispiel:
Das Ergebnis sollte so aussehen:
Sieht aber so aus (Problem sind die ""):
Hintergrund:
Eine bestimmte Software (LEd) übergibt bestimmte Pfadvariablen so:
Und ich möchte den Adobe Reader aufrufen und ihm dabei den Pfad zur Datei übergeben, so in etwa:
Beste Grüße
manu
Hier mal ein Beispiel:
set var1="C:\"
set var2="test.pdf"
echo %var1%_%var2%
pause
Das Ergebnis sollte so aussehen:
"C:\test.pdf"
Sieht aber so aus (Problem sind die ""):
"C:\""test.pdf"
Hintergrund:
Eine bestimmte Software (LEd) übergibt bestimmte Pfadvariablen so:
@rem There are 3 parameters passed to this batch:
@rem %1 - <MAINFILEDIR>
@rem %2 - <MAINFILENAME>
@rem %3 - <MAINFILEDISK>
Und ich möchte den Adobe Reader aufrufen und ihm dabei den Pfad zur Datei übergeben, so in etwa:
cd C:\Programme\Adobe\Reader 9.0\Reader
AcroRd32.exe %1%2
Beste Grüße
manu
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 101877
Url: https://administrator.de/forum/pfad-variablen-verknuepfen-bzw-zusammenfuehren-101877.html
Ausgedruckt am: 27.12.2024 um 12:12 Uhr
7 Kommentare
Neuester Kommentar
Hallo,
probier doch mal:
wenn das nicht funktioniert, warte auf bastla.
Grüße, Steffen
probier doch mal:
set "var1=C:\"
set "var2=test.pdf"
wenn das nicht funktioniert, warte auf bastla.
Grüße, Steffen
Hallo bipede!
zum Zwischenspeichern der Variablen %Seite% bis zum nächsten Batchlauf und
zum Einlesen verwenden.
Grüße
bastla
Werden dann mit
Jein; ein explizites "concat" benötigt Batch nicht - es können ganz einfach Variable und Konstante (wie Du es ja durch den Zusatz von ".pdf" schon selbst gemacht hast) ohne Weiteres zusammengeschrieben werden - durch die Anführungszeichen "zusammengebaut" (wenn Du das so nennen möchtest ) werden die einzelnen Teile wegen der Möglichkeit, dass Name oder Pfad Leerzeichen enthalten könnten."%~1%~2"
quasi Strings zusammengebaut?!Saugeil wäre es natürlich, wenn sich das batch merken würde, welche Seite zuvor geöffnet war und dann wieder dei gleiche Seite öffnet - aber das ist zuviel.
Wenn die Seitenzahl an Batch übergeben werden kann, wäre auch das "Merken" kein Problem - dazu könntest du einfachset Seite>D:\Seitenzahl.txt
for /f "delims=" %%i in (D:\Seitenzahl.txt) do set "%%i"
Grüße
bastla
Hallo bipede!
Den Namen des Prozesses kannst Du im Fall des Falles über "tasklist" herausfinden.
Grüße
bastla
dazu muss man mit dem Reader kommunizieren.
... was native Batch IMHO nicht kann (deshalb auch meine Einschränkung oben: Wenn die Seitenzahl an Batch übergeben werden kann) ...Es wäre zumindest nochmal besser, wenn ich mit dem Batch den Reader zuvor beenden könnte:
Soferne "taskkill" verfügbar ist (ab XP):taskkill /F /IM AcroRd32.exe
Grüße
bastla