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

Umgebungsvariable appdata für andere Benutzer ausfindig machen

Frage Entwicklung

Mitglied: Lionheart

Lionheart (Level 1) - Jetzt verbinden

02.12.2009 um 10:14 Uhr, 9772 Aufrufe, 7 Kommentare

Guten Morgen!

Ich muss mit einem Windows Batch-Skript mehrere Dateien in das Verzeichnis %userprofil%\Anwendungsdaten\ kopieren. Grundsätzlich ist das für den aktuell angemeldeten Benutzer kein Problem, da ich einfach den Befehle "copy xyz.txt %appdata%" nutzen kann.

Meine Problematik besteht nun darin, dass die Daten in jedes vorhandene Windows Benutzerprofil unter \Anwendungsdaten eingefügt werden müssen. Da sich die Daten benutzerspezifisch unterscheiden, kann ich das Verzeichnis unter "All Users" nicht verwenden.

\user1\Anwendungsdaten\abc.txt
\user2\Anwendungsdaten\def.txt
\user3\Anwendungsdaten\ghi.txt
etc.

Wie kann ich das Verzeichnis Anwendungsdaten alle vorhandenen Benutzerprofile ermitteln um die Dateien einzufügen. Da Skript wird vom Administrator ausgeführt, so dass Zugriffsrechte kein Problem darstellen. Erschwerend kommt hinzu, dass sich die klassischen \Anwendungsdaten ab Windows Vista und aktuelle unter \AppData\Roaming befinden. Die Windows Umgebungsvariable %appdata% hilft mir hierbei leider nur für den aktuellen Benutzer weiter.

Habt ihr eine Idee?

Vielen Dank!
Mitglied: DerWoWusste
02.12.2009 um 10:25 Uhr
Hi.
Die Windows Umgebungsvariable %appdata% hilft mir hierbei leider nur für den aktuellen Benutzer weiter.
Nimm ein Anmeldeskript und lass das in %appdata% schreiben, dann passt es für jeden Benutzer. Das ist gängige Praxis.
Bitte warten ..
Mitglied: miniversum
02.12.2009 um 10:55 Uhr
Mit
dir %USERPROFILE%\..
bekommst du sie Benutzerkonten aufgelistet.
Diese liste kannst du dann mit
FOR /F "delims=" %%i in ('dir /b %USERPROFILE%\..') do echo %%i
durchgehen und halt statt dem echo den entsprechenden Befehl einsetzen.
Wenn du es genau haben willst kannst du noch %APPDATA% zerlegen und deinen usernamen duch die in der liste ersetzen:
FOR /F "delims=" %%i in ('dir /b %USERPROFILE%\..') do FOR /F "tokens=1,* delims=%username%" %%j in ('echo %APPDATA%') do echo %%j%%i%%k
Bitte warten ..
Mitglied: Lionheart
02.12.2009 um 11:00 Uhr
Hi,

die Lösung ist mir bekannt. Kann ich in diesem Fall jedoch nicht anwenden, da dass Ganze beim Update einer Anwendung an verschiedenen PCs auch außerhalb meines Netzwerks durchgeführt werden muss.
Bitte warten ..
Mitglied: Lionheart
02.12.2009 um 11:53 Uhr
Der Befehl "dir %USERPROFILE%\.." funktioniert nicht. Bastle gerade aber an einer Lösung. Werde das Ergebnis dann Posten.
Bitte warten ..
Mitglied: miniversum
02.12.2009 um 12:40 Uhr
hier bei mir auf nem Vista rechner gehts.
Versuchs mal so:
01.
pushd "%USERPROFILE%" 
02.
cd.. 
03.
FOR /F "delims=" %%i in ('dir /b') do FOR /F "tokens=1,* delims=%username%" %%j in ('echo %APPDATA%') do echo %%j%%i%%k 
04.
popd
Bitte warten ..
Mitglied: Lionheart
02.12.2009 um 13:25 Uhr
Danke. Genau so hab ich es jetzt bereits auch gelöst.

Unter Vista geht das dir %userprofile%\.. unter XP leider nicht.
Bitte warten ..
Mitglied: Biber
02.12.2009 um 13:56 Uhr
Moin Lionheart,

Zitat von Lionheart:
Unter Vista geht das dir %userprofile%\.. unter XP leider nicht.
Ja nee, das hat nur indirekt mit der Betriebssystemversion XP oder Vi$ta zu tun..

Unter XP enthält (in fast allen üblichen Konstellationen) die Umgebungsvariable %USERSPROFILE% einen "Pfad mit Leerzeichen".
E.g. "C:\Dokumente und Einstellungen\Biber".
Unter Vi$ta ist kein Leerzeichen im Pfad "C:\Users\Whatever".

Funktionieren wir aber in beiden Fällen eine miniversum-Variante mit einem zusätzlichen Paar Anführungszeichen:
Demo am CMD-Prompt:
01.
FOR /F "delims=" %i in ('dir /b "%USERPROFILE%\.."') do @echo %i
Nur der Vollständigkeit halber, damit nicht aus diesem Beitrag irgendwann zitiert wird :"Unter Vista geht das dir %userprofile%\.. unter XP leider nicht."

Grüße
Biber
Bitte warten ..
Ähnliche Inhalte
Netzwerkmanagement
gelöst Wie scanne ich unser Netzwerk ab um den Trafficverursacher ausfindig zu machen? (7)

Frage von M.Marz zum Thema Netzwerkmanagement ...

Batch & Shell
gelöst Bash Umgebungsvariable PATH Splitten (1)

Frage von Marabunta zum Thema Batch & Shell ...

Batch & Shell
Umgebungsvariable "PATH" für eine Anwendung anpassen (7)

Frage von enno zum Thema Batch & Shell ...

Batch & Shell
gelöst Umgebungsvariablen mit PowerShell anpassen - Problem (5)

Frage von speedy26gonzales zum Thema Batch & Shell ...

Neue Wissensbeiträge
Viren und Trojaner

Link: Neues Botnetz über IoT-Geräte

Information von certifiedit.net zum Thema Viren und Trojaner ...

Ubuntu

Ubuntu 17.10 steht zum Download bereit

(3)

Information von Frank zum Thema Ubuntu ...

Datenschutz

Autofahrer-Pranger - Bewertungsportal illegal

(8)

Information von BassFishFox zum Thema Datenschutz ...

Windows 10

Neues Win10 Funktionsupdate verbuggt RemoteApp

(8)

Information von thomasreischer zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Router & Routing
Externe IP von innen erreichbar machen (15)

Frage von Windows10Gegner zum Thema Router & Routing ...

Windows Installation
Windows 10 neu installieren (12)

Frage von imebro zum Thema Windows Installation ...

Windows Server
Frage zu Server Rack (11)

Frage von rainergugus zum Thema Windows Server ...