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

Ordnerbesitzer (Folder owner) mit Batch auslesen

Frage Entwicklung Batch & Shell

Mitglied: aleks86

aleks86 (Level 1) - Jetzt verbinden

24.03.2010 um 14:48 Uhr, 8461 Aufrufe, 6 Kommentare

Besitzer eines Ordner mit dem Befehl dir und fin auslessen, ohne sonstige Informationen

Hallo,

ich brauche Hilfe, ich habe bereits einen Teil der Lösung oder besser gesagt einen Lösungsansatz, aber der Rest erschliesst sich mir nicht. Hoffe ihr habt Tipps für mich.

Ich versuche den Besitzer eines Ordner auszulesen, mit Batch.

Mit diesem Befehl kann ich die ganze Zeile des betreffenden Ordners ausgeben:

dir "C:\Documents and Settings" /ad /q | find /i ".."

als Resultat erhalte ich das:

02.12.2009 09:00 <DIR> BUILTIN\Administrators ..


Ich allerdings möchte nur als Ausgabe "BUILTIN\Administrators" !

Ist das überhaupt möglich?

Die Suche hatte ich bedient, aber nicht gefunden.

Danke schon im Voraus
aleks86
Mitglied: bastla
24.03.2010 um 15:22 Uhr
Hallo aleks86 und willkommen im Forum!

Wenn nichts dagegen spricht, dass sich der Batch ein wenig Hilfe von einem (selbst erstellten) VBScript holt, könnte das etwa so gehen:
01.
@echo off & setlocal 
02.
set "Ordner=C:\Documents and Settings" 
03.
 
04.
set "G=%temp%\GetOwner.vbs" 
05.
>%G%  echo GetObject("winmgmts://./root/cimv2").Get("Win32_LogicalFileSecuritySetting=""" ^& Replace(WScript.Arguments(0), "\", "\\") ^& """").GetSecurityDescriptor objSD 
06.
>>%G% echo WScript.Echo objSD.Owner.Domain ^& "\" ^& objSD.Owner.Name 
07.
 
08.
for /f "delims=" %%i in ('cscript //nologo "%G%" "%Ordner%"') do set "Besitzer=%%i" 
09.
echo %Besitzer%
Grüße
bastla
Bitte warten ..
Mitglied: aleks86
24.03.2010 um 15:28 Uhr
Hi bastla,

danke für die Hilfe, hatte ich aber leider vergessen zu erwähnen.

Ich kann leider kein WMI verwenden da ich auch Ordner auf einem NetApp Filer habe welcher ein Unix/Linux System ist.

Sorry, hab ich vergessen.

Trotzdem danke für die Hilfe.


Gruss
Aleks86
Bitte warten ..
Mitglied: bastla
24.03.2010 um 15:50 Uhr
Hallo aleks86!

Dann wirst Du wohl um etwas in der Art:
01.
for /f "tokens=3*" %%i in ('dir /ad /q "C:\Documents and Settings"^|find ".."') do set "Besitzer=%%j" 
02.
echo %Besitzer%
nicht herumkommen ...

Grüße
bastla
Bitte warten ..
Mitglied: aleks86
24.03.2010 um 16:04 Uhr
Hallo,

genial, danke! Am Ende sind noch die zwei Punkt gelistet (..). Wäre cool wenn man die noch wegbringen würde, falls nicht ist auch ok.

Gruss
Bitte warten ..
Mitglied: Biber
24.03.2010 um 16:32 Uhr
Moin aleks86,

du kannst ja die gesetzte Variable %besitzer% in bastlas Beispiel noch nachbehandeln, wenn du als gesichert annehmen kannst, dass zwei Punkte am Ende sind:

Demo am CMD-Prompt; erste Zeile ohne ">" eingeben.
01.
>echo a[%besitzer%] b[%besitzer:.=%] oder c[%besitzer:~0,-2%] 
02.
a[VORDEFINIERT\Administra..] b[VORDEFINIERT\Administra] oder c[VORDEFINIERT\Administra]
Wenn %besitzer% immer ein String der Form "texttexttext.." ist und die beiden ".." am Ende stören, dann
  • entweder alle "." durch "nichts" ersetzen (Variante b)
  • oder, falls das zu unsauber ist, dann explizit die letzten beiden Zeichen entsorgen (Variante c)

Grüße
Biber
Bitte warten ..
Mitglied: bastla
24.03.2010 um 18:56 Uhr
... wobei es, bei genauerer Betrachtung, auch noch ein Leerzeichen davor geben sollte - daher:
for /f "tokens=4" %%i in ('dir /ad /q "C:\Documents and Settings"^|find ".."') do set "Besitzer=%%i"
Zur Sicherheit (falls der Name des Besitzers doch zu lang sein sollte und daher das trennende Leerzeichen fehlt), auch noch den String ".." entsorgen:
set "Besitzer=%Besitzer:..=%"
Grüße
bastla
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
gelöst Variable per Batch auslesen und in Registry schreiben (1)

Frage von Zendara zum Thema Batch & Shell ...

Batch & Shell
gelöst Fenstertitel von anderen Tasks per batch auslesen (3)

Frage von NetMare zum Thema Batch & Shell ...

Batch & Shell
gelöst Bestimmte Zeile einer Textdatei mit Batch auslesen (2)

Frage von PinkFLuffyUnicorn zum Thema Batch & Shell ...

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

Frage von tralveller zum Thema Batch & Shell ...

Neue Wissensbeiträge
Batch & Shell

Batch - ein paar Basics die man kennen sollte

Tipp von Pedant zum Thema Batch & Shell ...

Microsoft

Restrictor: Profi-Schutz für jedes Window

(6)

Tipp von AlFalcone zum Thema Microsoft ...

Batch & Shell

Batch zum Zurücksetzen eines lokalen Profils

Tipp von Mr.Error zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Windows Server
gelöst Benutzer lässt sich nur an einem Clientcomputer anmelden (17)

Frage von Ammann zum Thema Windows Server ...

Vmware
gelöst Wie würdet Ihr eine ESXi Cluster Farm managen? (11)

Frage von AlFalcone zum Thema Vmware ...

Batch & Shell
gelöst Gruppenzugehörigkeit von AD Usern ermitteln - die Perfektion fehlt (11)

Frage von Stefan007 zum Thema Batch & Shell ...