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
Kommentar vom Moderator Biber am 02.08.2009 um 17:13:17 Uhr
Titel bearbeitet.
Originaltitel war "Speicherort der Batchdatei auslesen, nur wie?" - den habe ich gekürzt.
Diese "..., nur wie?" / "..., aber womit?" / ".., aber richtig!" -Anhängsel hebt Euch bitte für Diskussionen mit Vertreibern glutenfreier Bandscheibenmassageöle auf oder für F.D.P.-Landesparteitage.
In "Batch & Shell" sind solche Hingucker-Phrasen entbehrlich.
GELÖST

Speicherort der Batchdatei auslesen

Frage Entwicklung Batch & Shell

Mitglied: JulianB

JulianB (Level 1) - Jetzt verbinden

31.07.2009, aktualisiert 18.10.2012, 11274 Aufrufe, 8 Kommentare

Ich versuche den Speicherort einer Batchdatei auszulesen.

Hallo zusammen,

hatte schon lange vor mich hier anzumelden, jetzt musste es sein. Folgendes Problem quält mich:

Ich habe eine Batchdatei, diese wird auf verschiedenen Rechnern, je nach Benutzer an verschiedenen Speicherorten angelegt und später vom Desktop via Verknüpfung aufgerufen. Ich weiß nie genau wo diese Batchdatei später liegen wird. Die Aufgabe der Batchdatei ist es, Dateien vom Netzwerk in das Verzeichnis zu kopieren, in welcher die Batchdatei selbst liegt. Dazu muss ich allerdings herausfinden, in welchem Verzeichnis sie denn nun genau liegt. Und ich weiß nicht wie,...gibt es eine Möglichkeit, durch einen Befehl oder ähnliches in der Batch selbst den eigenen Speicherort herauszufinden?

Als Beispiel (klingt doch recht verworren oben):

Rechner1: Batch liegt in C:\User\Data\Ordner1
Rechner2: Batch liegt in Z:\Data\dwwd\Copy
Rechner3: Batch liegt in X:\Ordner\Ordner2\temp

So nun muss ich den Pfad rausbekommen der zu meiner Batch führt. Ein Aufruf meines Skripts sieht zum Beispiel so aus:

C:\Programme\Support Tools>C:\dev\XXXX\Temp\test.bat

Ein CD oder CHDIR gibt mir jetzt "C:\Programme\Support Tools" zurück, ich aber MUSS das hier wissen "C:\dev\XXXX\Temp"

Ich hoffe es ist verständlich.

LG, Julian
Mitglied: godlie
31.07.2009 um 16:06 Uhr
Hallo,
sorry hab den letzen satz übersehen mal einen moment....

sodala

also mit echo %0 bekommst du den aufrufenden Pfad
Bitte warten ..
Mitglied: Pjordorf
31.07.2009 um 16:13 Uhr
Hallo,

auf den Desktop des Anwenders mit \\pc\c$\dokument....\desktop gehen und dir die verknüpfungeeigenschaften anzeigen lassen. Dann hast du den Pfad erstmal WO die Batchdatei gespeichert ist.

Warum nicht die Batchdatei auf dem Server abgelegt und von dort mittels verknüpfung auf den desktop Öffnen. dann weist du IMMER wo deine Batchdatei gespeichert ist.

Peter
Bitte warten ..
Mitglied: godlie
31.07.2009 um 16:15 Uhr
Ähm ein wenig aufwendig oder?
vorallem wie willst du das innerhalb einer bat machen?
Bitte warten ..
Mitglied: paulepank
31.07.2009 um 16:22 Uhr
Hallo Julian,

%~dp0 wird wohl das sein was du suchst.

01.
echo %~dp0
würde bei deinem Bsp c:\dev\xxxx\temp\ ausgeben.

cu paulepank
Bitte warten ..
Mitglied: Seardan
31.07.2009, aktualisiert 18.10.2012
Hallo,

wie sieht es den mit dieser Anleitung aus:

http://www.administrator.de/wissen/aktuellen-pfad-der-cmd-batch-auslese ...

Sollte es jawohl sein.

Andreas
Bitte warten ..
Mitglied: bastla
31.07.2009 um 16:37 Uhr
@Seardan
In dieser Anleitung wird beschrieben, wie der aktuelle Pfad gefunden wird - dieser muss keineswegs mit dem Speicherort der Batchdatei übereinstimmen - Beispiel: Die Batchdatei "Kopiere.cmd" liegt in "C:\Utils" und wird von der Kommandozeile aus wie folgt gestartet:
D:\Test>C:\Utils\Kopiere Parameter1 Parameter2
Der aktuelle Pfad (%cd%) bleibt, solange er nicht durch den Batch verändert wird, "D:\Test", während das angesprochene "%~dp0" als Ergebnis "C:\Utils\" liefert.

In einer Verknüpfung kann ebenfalls per "Ausführen in" ein anderer "aktueller Pfad" für den Batch vorgegeben werden.

Grüße
bastla
Bitte warten ..
Mitglied: paulepank
01.08.2009 um 08:20 Uhr
Hallo godlie,

also mit echo %0 bekommst du den aufrufenden Pfad

1. dem ist nicht so.
2. ist es schlechter Stil, seinen eigenen Beitrag Stunden später mit Erkenntnissen zu editieren, die
zudem auch noch falsch sind und niemand davon benachrichtigt wird........
3. ..... es sei denn, man sieht mal nach ob Julian den Beitrag als gelöst markiert hat.

cu paulepank
Bitte warten ..
Mitglied: JulianB
12.08.2009 um 10:42 Uhr
Hallo Zusammen,

entschuldigung das ich mich erst jetzt melde. Hatte ne Woche Urlaub. Erst einmal vielen vielen Dank für die vielen hilfreichen Antworten. Die Lösung mittels "%~dp0" hats im endeffekt gebracht. Genau danach hatte ich gesucht!

Echt richtig super, danke!

Liebe Grüße, Julian
Bitte warten ..
Neuester Wissensbeitrag
Humor (lol)

Linkliste für Adventskalender

(3)

Information von nikoatit zum Thema Humor (lol) ...

Ähnliche Inhalte
Batch & Shell
gelöst Mit Batchdatei Informationen auslesen und diese strukturiert in Excel ausgeben (9)

Frage von Flodsche zum Thema Batch & Shell ...

Batch & Shell
Eventlog Druckjobs mit VBS auslesen

Frage von joni2000de zum Thema Batch & Shell ...

Batch & Shell
gelöst Appx aus Image auslesen und entfernen (9)

Frage von Markus2016 zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Router & Routing
gelöst Ipv4 mieten (22)

Frage von homermg zum Thema Router & Routing ...

Exchange Server
gelöst Exchange 2010 Berechtigungen wiederherstellen (20)

Frage von semperf1delis zum Thema Exchange Server ...

Windows Server
DHCP Server switchen (20)

Frage von M.Marz zum Thema Windows Server ...

Hardware
gelöst Negative Erfahrungen LAN-Karten (19)

Frage von MegaGiga zum Thema Hardware ...