Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

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

Batch Datei auswählen (vbs) und in zwei Variablen erfassen fullpath und stand alone dateiname

Frage Entwicklung Batch & Shell

Mitglied: OKIDOKI

OKIDOKI (Level 1) - Jetzt verbinden

28.08.2012 um 23:38 Uhr, 3434 Aufrufe, 4 Kommentare

Guten Abend,
trotz langer Suche konnte ich leider keine Ergebnis finden und würde mich über Hilfe freuen

In folgender Batch kann mittels eines vbs-Scriptes eine Datei ausgewählt werden. Jetzt benötige ich aber nicht nur den vollen Path (wegen einer Kopiermöglichkeit in der weiteren Verarbeitung), sondern eben auch den reinen Dateinamen:

01.
@ECHO OFF & SETLOCAL 
02.
>%temp%\msgbox.vbs ECHO 'Datei auswählen 
03.
>>%temp%\msgbox.vbs ECHO Set objOpenDialog = CreateObject("SAFRCFileDlg.FileOpen") 
04.
>>%temp%\msgbox.vbs ECHO intReturn = objOpenDialog.OpenFileOpenDlg 
05.
>>%temp%\msgbox.vbs ECHO If intReturn Then WScript.Echo objOpenDialog.FileName 
06.
set "Eingabe=" 
07.
for /f "delims=" %%i in ('cscript //nologo %temp%\msgbox.vbs') do set "Eingabe=%%i" 
08.
del "%temp%\msgbox.vbs" 
09.
 
10.
:: In %Eingabe% steht ja der komplette Pfad (den ich ebenfalls benötige). Wie bekomme ich zusätzlich den Dateinamen? 
11.
 
Danke, OKIDOKI
Mitglied: bastla
28.08.2012 um 23:52 Uhr
Hallo OKIDOKI!

Wenn's weiter nix sein soll :
01.
for /f "delims=" %%i in ('cscript //nologo %temp%\msgbox.vbs') do set "Pfad=%%~dpi" & set "Name=%%~ni" & set "Typ=%%~xi" 
02.
echo "%Name%" mit Typ "%Typ%" in Pfad "%Pfad%" ergibt: "%Pfad%%Name%%Typ%
Grüße
bastla
Bitte warten ..
Mitglied: OKIDOKI
29.08.2012, aktualisiert um 09:50 Uhr
Hallo bastla,

nein, solls nicht!

Weltbestes Forum, in kürzester Zeit - und mit der allerbesten Hilfe!

PS: Könntest du mir noch ~dpi, ni und xi erklären und vor allem sagen, ob die und andere definiert sind?
PS2: wie muss denn "if defined" aussehen?

Das reicht ja nicht:
01.
if defined Eingabe (GOTO :weiter) else (GOTO :halt)
Dankeschön!
OKIDOKI
Bitte warten ..
Mitglied: bastla
29.08.2012, aktualisiert 07.09.2012
Hallo OKIDOKI!
Könntest du mir noch ~dpi, ni und xi erklären und vor allem sagen, ob die und andere definiert sind?
Soferne ich Dich richtig verstehe, meinst Du, ob eine Abfrage mit "if defined" möglich ist; wenn ja, ist die Antwort zwar "nein", aber da ja, wie oben gezeigt, eine Zuweisung an "gewöhnliche" Variable erfolgen kann, lässt sich die ja danach prüfen ...

Informationen zu "%~ni" etc findest Du mit "for ?" (ziemlich am Ende).
Das reicht ja nicht:
Doch - wenn eine Eingabe/Auswahl erfolgt ist, hat die Variable %Eingabe% einen Inhalt und ist daher "defined" ...

Grüße
bastla
Bitte warten ..
Mitglied: OKIDOKI
29.08.2012 um 23:50 Uhr
Hallo bastla,

das ist ja (for /?) schön nachzulesen!

Danke auch für den "defined"-Hinweis.

Grüße
OKIDOKI
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
gelöst In einer Batch-Datei einen variablen Teil eines Dateinamens auslesen (5)

Frage von dh0815 zum Thema Batch & Shell ...

Windows 10
gelöst Vbs oder batch zum Ändern von Dateinamen ab Zeichenkette (13)

Frage von vbaGast zum Thema Windows 10 ...

VB for Applications
gelöst VBS Datei Auswahl Dialog (5)

Frage von 133202 zum Thema VB for Applications ...

Batch & Shell
Vergleich einer Zeichenfolge in zwei Dateinamen (3)

Frage von hongziehong zum Thema Batch & Shell ...

Neue Wissensbeiträge
Windows Update

Novemberpatches und Nadeldrucker bereiten Kopfschmerzen

(14)

Tipp von MettGurke zum Thema Windows Update ...

Windows 10

Abhilfe für Abstürze von CDPUsersvc auf Win10 1607 und 2016 1607

(7)

Tipp von DerWoWusste zum Thema Windows 10 ...

RedHat, CentOS, Fedora

Fedora 27 ist verfügbar

Information von Frank zum Thema RedHat, CentOS, Fedora ...

Heiß diskutierte Inhalte
Server
Bilder aus dem Web mit CSV runterladen (30)

Frage von Yannosch zum Thema Server ...

LAN, WAN, Wireless
Gebäudeverkabelung 10Gigabit LWL (27)

Frage von raffzwo zum Thema LAN, WAN, Wireless ...

Windows Update
Novemberpatches und Nadeldrucker bereiten Kopfschmerzen (14)

Tipp von MettGurke zum Thema Windows Update ...