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

Rückgabe einer Variable von VBS nach Batch

Frage Entwicklung Batch & Shell

Mitglied: ForgottenRealm

ForgottenRealm (Level 1) - Jetzt verbinden

22.11.2011 um 09:01 Uhr, 7705 Aufrufe, 5 Kommentare

Guten Morgen


Wieder einmal habe ich ein mehr oder weniger kleines Problem mit Batch

Das folgende VBScript wird in Batch erstellt und aufgerufen:

01.
Dim DateiGroesse 
02.
Dim Einheit 
03.
 
04.
DateiGroesse = 2453896529 
05.
Einheit = "Nix" 
06.
 
07.
Select Case Len(DateiGroesse) 
08.
 
09.
Case 1, 2, 3 'Byte 
10.
	DateiGroesse = DateiGroesse 
11.
	Einheit = "Byte" 
12.
 
13.
Case 4, 5, 6 'KiloByte 
14.
	DateiGroesse = Round(DateiGroesse / 1024, 2) 
15.
	Einheit = "KiloByte" 
16.
 
17.
Case 7, 8, 9 'MegaByte 
18.
	DateiGroesse = Round(DateiGroesse / 1024 / 1024, 2) 
19.
	Einheit = "MegaByte" 
20.
 
21.
Case 10, 11, 12 'GigaByte 
22.
	DateiGroesse =  Round(DateiGroesse / 1024 / 1024 / 1024, 2) 
23.
	Einheit = "GigaByte" 
24.
 
25.
Case 13, 14, 15 'TeraByte 
26.
	DateiGroesse =  Round(DateiGroesse / 1024 / 1024 / 1024 / 1024, 2) 
27.
	Einheit = "TeraByte" 
28.
 
29.
Case Else 
30.
	DateiGroesse = 0 
31.
	Einheit = "Nix" 
32.
 
33.
End Select 
34.
 
35.
WScript.Echo DateiGroesse & " " & Einheit
Die direkte Ausführung liefert mir ein Einwandfreies Ergebnis (Dateigröße und Einheit) von 2,29 GigaByte

Nun möchte ich diese Ausgabe allerdings im Batchscript weiter verwenden.

Dazu rufe ich mit:
01.
for /F %%I IN ('cscript //nologo C:\VBSFile.vbs') DO Set Var=%%I
sie VBS Datei auf und gebe mir anschließend die Variabel %Var% aus. In dieser steht dann allerdings nur der erste Teil (2,29), ohne die Einheit.

Auch das Arbeiten mit ... DO Set Var="%%I" und WScript.Echo """" & DateiGroesse & " " & Einheit & """" brachte keine besserung.


Wo liegt das Problem?
Mitglied: 60730
22.11.2011 um 09:25 Uhr
moin,

ohne das jetzt genauer unter die Lupe zu nehmen...

01.
for /F "delims=" %%I IN ('cscript //nologo C:\VBSFile.vbs') DO Set "Var" == "%%I"

Gruß
Bitte warten ..
Mitglied: ForgottenRealm
22.11.2011 um 10:20 Uhr
Moin

Funktioniert leider nicht, bekomme da nur das allseits bekannte ECHO ist ausgeschaltet zurück

Probiert mit:

01.
Set "Var" == "%%I" 
02.
Set "Var"=="%%I" 
03.
 
04.
Set "Var" = "%%I" 
05.
Set "Var"="%%I"
Und hier gibts nach wie vor nicht die komplette Variable:

01.
Set Var = "%%I" 
02.
Set Var="%%I"
Bitte warten ..
Mitglied: Skyemugen
22.11.2011 um 10:27 Uhr
Aloha, ...

hm ...
also
01.
for /F "delims=" %%I IN ('cscript //nologo E:\Skripte\test.vbs') DO set "var=%%I" 
02.
echo %var%
funktioniert einwandfrei
E:\Skripte>for /F "delims=" %I IN ('cscript //nologo E:\Skripte\test.vbs') DO se 
t "var=%I" 
 
E:\Skripte>set "var=2,29 GigaByte" 
 
E:\Skripte>echo 2,29 GigaByte 
2,29 GigaByte 
 
E:\Skripte>pause 
Drücken Sie eine beliebige Taste . . .
Bitte warten ..
Mitglied: ForgottenRealm
22.11.2011 um 10:44 Uhr
Na klasse, hab ich Depp das "delims=" vergessen ...

Nun funktionierts, vielen Dank
Bitte warten ..
Mitglied: 60730
22.11.2011 um 14:05 Uhr
Servus,

[OT]
Funktioniert leider nicht, bekomme da nur das allseits bekannte ECHO ist ausgeschaltet zurück
Das kenn ich garnicht, denn bei mir müßte da das Gegenteil ECHO ist eingeschaltet (ON). geschrieben werden

Jetzt verrat uns doch nicht, dass du auch ein Alphabetagammatester bist, der €echo off kennt, du warst mir so symphatisch
[/OT]

freut mich
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
gelöst Variable per Batch auslesen und in Registry schreiben (1)

Frage von Zendara zum Thema Batch & Shell ...

VB for Applications
gelöst Tool zur scriptbasierten PDF-Bearbeitung gesucht (VBS oder Batch) (6)

Frage von SarekHL zum Thema VB for Applications ...

Batch & Shell
gelöst Batch: CPU-Auslastung eines Prozesses auslesen und als Variable definieren (3)

Frage von tralveller zum Thema Batch & Shell ...

Batch & Shell
gelöst In einer Batch variable die Datei extension ermitteln ? (4)

Frage von Kriegstreiber zum Thema Batch & Shell ...

Neue Wissensbeiträge
RedHat, CentOS, Fedora

Fedora, RedHat, Centos: DNS-Search Domain setzen

(13)

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

Drucker und Scanner

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

(1)

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

Heiß diskutierte Inhalte
LAN, WAN, Wireless
gelöst Komplett neues Netzwerk, Ubiquiti WLAN, Router, Switch (15)

Frage von Freak-On-Silicon zum Thema LAN, WAN, Wireless ...

CMS
Lokales Wordpress im LAN - wie aufsetzen? (15)

Frage von Static zum Thema CMS ...

RedHat, CentOS, Fedora
Fedora, RedHat, Centos: DNS-Search Domain setzen (13)

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

Backup
Backup Wochen- Monats- Jahressicherung (13)

Frage von Meterpeter zum Thema Backup ...