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

Größe des Arbeitsspeicher auslesen

Frage Entwicklung Batch & Shell

Mitglied: swidch

swidch (Level 1) - Jetzt verbinden

18.11.2009, aktualisiert 11:12 Uhr, 6025 Aufrufe, 4 Kommentare

Ich versuche die Größe des Arbeitsspchers auszulesen und diesen dann nicht in Byte anzuzeigen, sondern in MB.
Ab einer gewissen Zahlengröße, gibt es bei der Division einen Fehler.
Hat jemand eine Lösung?

01.
@echo off 
02.
for /F "delims=" %%a in ('netsh diag show computer /v ^| find "TotalPhysicalMemory"') do call :splitram %%a 
03.
goto :eof 
04.
 
05.
 
06.
:splitram 
07.
set /a mem=%2 
08.
set /a mem=%mem%/1024 
09.
set /a mem=%mem%/1024 
10.
echo Memory: %2 Byte>>Memory_%COMPUTERNAME%.txt 
11.
echo Memory: %mem% MB>>Memory_%COMPUTERNAME%.txt



01.
Output1: 
02.
Memory: 2146418688 Byte 
03.
Memory: 2046 MB
01.
Output2: 
02.
Memory: 2683285504 Byte 
03.
Memory: -1537 MB

Danke schon mal im vorraus.
Christian
Mitglied: 76109
18.11.2009 um 13:04 Uhr
Hallo swidch!

Der vermeindliche Fehler hängt mit dem Datentyp Long zusammnen.

32-Bit Zahlenwert = 4.294.967.295 = Long von -2.147.483.648 bis +2.147.483.647

Bei der Berechnung ist das (-)Vorzeichen-Bit 31 gesetzt und ergibt zwangsläufig bei einer Berechnung z.B. Division einen -Wert

Gruß Dieter
Bitte warten ..
Mitglied: miniversum
18.11.2009 um 13:25 Uhr
Die einzige Möglichkeit das in Batch zu machen ist dann der ungenauere weg indem man durch 1000 statt 1024 teilt indem man die letzten 3 stellen abschneidet.
set mem=%mem:~0,-3%

Alternativ kann man systeminfo benutzen. Dort wird der Arbeitsspeicher schon in MB angezeigt.
Bitte warten ..
Mitglied: swidch
18.11.2009 um 13:51 Uhr
An die unscharfe Lösung hab ich auch schon gedacht.
Ebenso an die Alternative mit systeminfo.
Leider liefert mir Systeminfo einen Wert mit einer Huntertertrennung.
Somit kann ich den Wert nicht mehr weiter verarbeiten, außer mir kann jemand sagen wie ich die Hundertertennung weg bekomme...
Bitte warten ..
Mitglied: Biber
18.11.2009 um 14:26 Uhr
Moin swidch,

ich kann zwar als Norddeutscher nur vermuten, was ihr wohl unter einer "Huntertertrennung" versucht zu verbalisieren,
aber falls es nur darum geht, einen Punkt (".") durch gar nichts ("") zu ersetzen, folge dieser Skizze:
(Demo am CMD-Prompt; ">" nicht mit eingeben)
01.
>set "PhysSpeicher=2.028 MB" 
02.
>echo [%PhysSpeicher%] .... [%PhysSpeicher:.=%] 
03.
[2.028 MB] .... [2028 MB]
Allgemeinere Hinweise zum Manipulieren von CMD-Variableninhalten unter SET /?

Grüße
Biber
Bitte warten ..
Ähnliche Inhalte
Microsoft
Arbeitsspeicher wird nicht wieder freigegeben
Frage von Jan1986Microsoft8 Kommentare

Hallo zusammen, wir haben eine Software im Einsatz welche wir als Branchenlösung einsetzen. Das Problem ist seit einigen Tagen, ...

CPU, RAM, Mainboards
Arbeitsspeicher Verständnisfrage.
gelöst Frage von EdaseinsCPU, RAM, Mainboards10 Kommentare

Hallo ihr lieben, Egal mit welchen Schlagworten ich bei Google suche ich finde keine Erklärung zu meiner Frage Gibt ...

CPU, RAM, Mainboards
Laptop mit defekten Arbeitsspeicher
gelöst Frage von MarkowitschCPU, RAM, Mainboards9 Kommentare

Hallo Zusammen, ich habe hier einen defekten ASUS Laptop. Nach einer ersten Diagnose konnte ich feststellen dass der Arbeitsspeicher ...

Windows Server
MSSQL Arbeitsspeicher Auslastung
Frage von Jabberwocky86Windows Server6 Kommentare

Hallo Zusammen Wir haben bei uns einen Windows 2012 R2 Server mit MSSQL 2014 am laufen. Nun haben wir ...

Neue Wissensbeiträge
Windows 10

Windows 10 Hello-Anmeldung per Foto ausgehebelt

Tipp von kgborn vor 3 StundenWindows 10

Windows Hello ist eine Funktion, um sich per Fingerabdruck-, Gesichts- oder Iriserkennung bei Windows 10-Geräten anzumelden (siehe), setzt aber ...

Perl

Perl hat heute Geburtstag: 30 Jahre Perl: Lange Gesichter zum Geburtstag

Information von Penny.Cilin vor 10 StundenPerl2 Kommentare

Hallo, auch wenn es wenige wissen und noch weniger Leute es nutzen. Perl hat heute Geburtstag. 30 Jahre Perl ...

Sicherheit

Blackberry stirbt - Keine Updates für Priv mehr

Tipp von certifiedit.net vor 11 StundenSicherheit1 Kommentar

Blackberry wird zu einer 08/15 Firma und geht wohl mehr und mehr den Weg, den HTC schon ging. Von ...

Windows 10

Autsch: Microsoft bündelt Windows 10 mit unsicherer Passwort-Manager-App

Tipp von kgborn vor 2 TagenWindows 1012 Kommentare

Unter Microsofts Windows 10 haben Endbenutzer keine Kontrolle mehr, was Microsoft an Apps auf dem Betriebssystem installiert (die Windows ...

Heiß diskutierte Inhalte
Windows Server
SCCM 2016: PXE Boot des Clients schlägt fehl
Frage von gabeBUWindows Server23 Kommentare

Hallo Zusammen Ich habe eine Testumgebung erstellt um über SCCM 2016 einen virtuellen Client aufzusetzen. Folgende Maschinen habe ich ...

Netzwerkgrundlagen
Belibiges Teilnetz einer Subnetzmaske rausfinden?
gelöst Frage von CenuzeNetzwerkgrundlagen19 Kommentare

Wundervollen Gutentag, mittlerweile kann ich Subnetting so einigermaßen, aber ein Problem habe ich noch. Netzwerkadresse und Boradcast errechnen ist ...

LAN, WAN, Wireless
WLAN Reichweite erhöhen mit neuer Antenne
gelöst Frage von gdconsultLAN, WAN, Wireless12 Kommentare

Hallo, ich besitze einen TL-WN722N USB-WLAN Dongle mit einer richtigen Antenne. Ich frage mich jetzt ob man die Reichweite ...

Exchange Server
Exchange empfängt Emails - Kann aber keine Senden
gelöst Frage von niklasschaeferExchange Server11 Kommentare

Hallo, ich stehe gerade bei mir zuhause vor folgender Problemstellung. Gegeben sind 2x Hyper-V Host mit Windows Server 2016 ...