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

Fsutil - in batchdatei einbinden

Mitglied: Backspace

Backspace (Level 1) - Jetzt verbinden

16.12.2010 um 21:45 Uhr, 4534 Aufrufe, 7 Kommentare

Hallo,

Sorry, ich schon wieder.

Komm leider wieder nicht weiter:

01.
 
02.
set fixed=%temp%\fixed.txt 
03.
 
04.
for /f %%a in ('fsutil fsinfo drives') do fsutil fsinfo drivetype %%a |find "Eingebautes" >>%fixed% 
05.
 
06.
for /f %%b in ('fsutil fsinfo drivetype %%a |find "Eingebautes') do fsutil volume diskfree %%b >>%fixed% 
07.
 
08.
for /f "tokens=*" %%b in (fixed.txt) do wget -q "http:........" 
09.
 
Mein Vorhaben:

mit fsutil sollen einmal die lokalen Laufwerke und die entsprechenden freien Speicher ausgelesen werden.

Da fsutil beides jeweils anscheinend nur einzeln auslesen kann, muß man die ausgelesenen Werte in eine Datei Zwischenspeichern und zum Schluß wieder richtig zusammenführen.

Ich mußte leider auf fsutil zurückgreifen, da ich seit neuem die Vorgabe habe, den freien Speicher in Byte anzeigen zu lassen, die Umrechnung des freien Speichers (über PHP mit 1024er Blockgröße) von Terrabyte/Gigabyte auf Byte wird leider zu ungenau.


Danke im Voraus !

Gruß

Backspace
Mitglied: bastla
16.12.2010 um 23:02 Uhr
Hallo backspace!

Wie wär's mit
for /f "tokens=1,4" %%a in ('"wmic logicaldisk get caption,description,freespace"^|findstr Festplatte') do echo %%a %%b
Grüße
bastla
Bitte warten ..
Mitglied: Backspace
17.12.2010 um 10:26 Uhr
Hallo bastla,

Danke funktionierte auf Anhieb.

Eine Frage noch:

wenn ich den Code mit "size" erweitere, werden mir auch die Gesamtkapazitäten angezeigt, die mathematische Umrechnung um den freien Speicher in Prozent zu erhalten wäre:

100% - [freespace / size * 100]



01.
for /f "tokens=1,4" %%a in ('"wmic logicaldisk get caption,description,freespace,size"^|findstr Festplatte') do echo %%a %%b
Kann man das auch mit in die Forschleife einfügen, sonst würde ich ja doppelte Ausgaben erhalten, also einmal nur Laufwerk und Frei(%) , und eine weitere Ausgabe nur mit Laufwerk und Frei(Byte), wenn ich noch eine zweite Forschleife erstelle.

Danke

Gruß

Backspace
Bitte warten ..
Mitglied: bastla
17.12.2010 um 15:19 Uhr
Hallo Backspace!

Bedingt durch die Beschränkungen der CMD-Arithmetik (nur ganzzahlig, max 32-Bit-Werte) könntest Du das nur etwa so versuchen:
01.
@echo off & setlocal enabledelayedexpansion 
02.
for /f "tokens=1,4,5" %%a in ('"wmic logicaldisk get caption,description,freespace,size"^|findstr Festplatte') do ( 
03.
    set Free=%%b 
04.
    set Size=%%c 
05.
    set /a Pct=!Free:~,-3!/!Size:~,-5! 
06.
    echo %%a %%b !Pct! 
07.
)
Den freien Speicher in Prozent erhältst Du übrigens mit
freespace / size * 100
- Deine Formel würde den Prozentsatz für den belegten Speicherplatz liefern.

Für die Berechnung im Batch wird mit auf 1.000 Byte abgerundeten Werten gerechnet, indem vom freien Speicherplatz die letzten 3 Stellen weggelassen werden und vom Gesamtspeicher die letzten 5 Stellen - entspricht dann also der Formel
freespace / (size / 100)
Grüße
bastla

P.S.: Was spricht eigentlich gegen die Verwendung von VBS (einen entsprechenden Ansatz hattest Du ja bereits)?
Bitte warten ..
Mitglied: Backspace
17.12.2010 um 16:13 Uhr
Hallo bastla,

das VBS mußte ich leider wieder aus der batch entfernen (Anweisung von Oben).


Zum obigen Code:

es kommt leider folgende Fehlermeldung:

Fehlender Operator
C: 63968415744 !Pct!
Fehlender Operator
D: 7050096640 !Pct!

Wie müßte es aussehn, wenn ich es mit dem..............DO wget -q "http:................." verbinden möchte ?

Danke

Gruß

Backspace
Bitte warten ..
Mitglied: bastla
17.12.2010 um 16:45 Uhr
Hallo Backspace!

Ändere das "echo off" auf "echo on" und starte den Batch aus einem CMD-Fenster - dann siehst Du, welcher Wert nicht zugewiesen wird, und wenn Du dann noch die Ausgabe von
wmic logicaldisk get caption,description,freespace,size
analysierst, wirst Du hoffentlich feststellen können, welche "tokens" bei Deiner (leider nicht genannten) Windows-Version benötigt werden (unter XP SP3 funktioniert der von mir gepostete Batch) ...
Wie müßte es aussehn, wenn ich es mit dem..............DO wget -q "http:................." verbinden möchte ?
Die gesamte Klammer (= Zeilen 3 bis 6) wird für jedes Laufwerk einmal ausgeführt - daher einfach "wget ..." innerhalb der Klammer platzieren (analog zu Zeile 6).

Grüße
bastla
Bitte warten ..
Mitglied: Backspace
18.12.2010 um 20:13 Uhr
Hallo bastla,

möchte mich zuerst wieder für die tolle Hilfe bedanken.

Mein Arbeitsrechner an dem ich alles teste, hat leider ein Vista Betriebssystem, abgesehn davon muß das Batch für alle Winversionen funktionieren (Win Server2003/2008, XP Prof., Vista, Win7,....).

Könnte man das evtl. auch in dieser Art lösen, war ein Ansatz von mir, den ich leider auch nicht zu Ende bringen konnte ?

01.
FOR /F "tokens=1,4" %%i IN ('"wmic logicaldisk get caption,description,size"^|findstr Lokale') DO SET "Size=%%i" 
02.
FOR /F "tokens=1,4" %%k IN ('"wmic logicaldisk get caption,description,freespace"^|findstr Lokale') DO SET "Free=%%k" 
03.
 
04.
FREESPACE=100 
05.
FreeSpace=FREESPACE-(Free/Size*100) 
06.
let FreeSpace=$FREESPACE_in_Prozent - $...... 
07.
08.
09.
.

Ich kann Deine o.g. Vorschläge erst wieder am Montag testen, wenn ich wieder in der Firma bin.

Danke

Gruß

Backspace
Bitte warten ..
Mitglied: bastla
18.12.2010 um 21:15 Uhr
Hallo Backspace!

Abgesehen davon, dass unsere Interpretationen hinsichtlich der Prozentberechnung etwas differieren, solltest Du schon gesehen haben, dass arithmetische Berechnungen in CMD mit "set /a Variable=" durchgeführt werden.
Hinsichtlich der Verwendung zweier "wmic"-Abfragen: ist möglich (wenn auch für den angestrebten Zweck nicht in der von Dir dargestellten Form), aber ziemlich sinnlos ...
Ob die "wmic"-Ausgabe unter allen benötigten BS das selbe Ergebnis (zumindest hinsichtlich der "tokens") liefert, musst Du selbst testen.
Noch als Hinweis: Für die Verwendung von "wmic" sind Admin-Rechte erforderlich.

Grüße
bastla
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Abfrage in einer Batchdatei ?
gelöst Frage von Emily33Batch & Shell3 Kommentare

Hallo alle, ich habe mir eine Diskpart Batchdatei erstellt um öfters USB-Sticks bootfähig zu machen. An einem Punkt komme ...

Batch & Shell
Robocopy in einer Batchdatei
gelöst Frage von CinebatBatch & Shell7 Kommentare

Hallo ich möchte ein einfache Batchdatei erstellen. Ich möchte sämtliche Dateien und Ordner von meiner Festplatte D: auf ein ...

Windows Server

Letzter Zugriff auf eine Datei - Ordner mit fsutil behavior query disablelastaccess

Frage von frank99Windows Server

Hallo zusammen, ich wollte nachfragen ob jemand Erfahrung hat fsutil behavior query disablelastaccess 0 einzuschalten. Wir haben einen SBS2011 ...

Windows Tools

Aktuelles Verzeichnis in Batchdatei

gelöst Frage von SnuffchenWindows Tools7 Kommentare

Hallo zusammen, ich habe das Problem das ich innerhalb einer Batch-Datei das aktuelle Verzeichnis der Batch-Datei ermitteln muss. Führe ...

Neue Wissensbeiträge
Humor (lol)

WhatsApp-Nachrichten endlich auch per Bluetooth versendbar

Information von BassFishFox vor 4 StundenHumor (lol)1 Kommentar

Genau darauf habe ich gewartet! ;-) Der beliebte Messaging-Dienst WhatsApp erhält eine praktische neue Funktion: Ab dem nächsten Update ...

Google Android

Googles "Android Enterprise Recommended" für Unternehmen

Information von kgborn vor 16 StundenGoogle Android3 Kommentare

Hier eine Information, die für Administratoren und Verantwortliche in Unternehmen, die für die Beschaffung und das Rollout von Android-Geräten ...

Sicherheit

Intel gibt neue Spectre V2-Microcode-Updates frei (20.02.2018)

Information von kgborn vor 17 StundenSicherheit

Intel hat zum 20. Februar 2018 weitere Microcode-Updates für OEMs freigegeben, um Systeme mit neueren Prozessoren gegen die Spectre ...

Microsoft
ARD-Doku - Das Microsoft Dilemma
Tipp von Knorkator vor 20 StundenMicrosoft3 Kommentare

Hallo zusammen, vor einigen Tagen lief in der ARD u.a. Reportage. Das Youtube Video dazu dürfte länger verfügbar sein. ...

Heiß diskutierte Inhalte
Windows Server
AD DS findet Domäne nicht, behebbar?
Frage von schapitzWindows Server40 Kommentare

Guten Tag, ich habe bei einem Kunden ein Problem mit den AD DS. Umgebung ist folgende: Windows Server 2016 ...

Router & Routing
LANCOM VPN CLIENT einrichten
Frage von Finchen961988Router & Routing27 Kommentare

Hallo, ich habe ein Problem und hoffe ihr könnt mir helfen, wir haben einen Kunden der hat einen Speedport ...

Router & Routing
ISC DHCP 2 Subnetze
gelöst Frage von janosch12Router & Routing19 Kommentare

Hallo, ich betreibe bei mir im Netzwerk einen ISC DHCP Server auf Debian, der DHCP verwaltet aktuell ein /24 ...

Switche und Hubs
Cisco SG350X-48 AdminIP in anderes VLAN
Frage von lcer00Switche und Hubs14 Kommentare

Hallo zusammen, ich habe ein Problem mir einem Cisco SG350X-48 bei der Erstinstallation wurde eine IP 192.168.0.254 (Default VLAN ...