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

Umgebungsvariable appdata für andere Benutzer ausfindig machen

Frage Entwicklung

Mitglied: Lionheart

Lionheart (Level 1) - Jetzt verbinden

02.12.2009 um 10:14 Uhr, 9392 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 ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(6)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Windows Userverwaltung
Servergespeichertes Profil - Pfad ausfindig machen (6)

Frage von staybb zum Thema Windows Userverwaltung ...

Windows Server
Windows Server 2012 R2 Benutzerkonto für Zugriff auf AD Benutzer (1)

Frage von JulianOhm zum Thema Windows Server ...

Heiß diskutierte Inhalte
LAN, WAN, Wireless
gelöst Server erkennt Client nicht wenn er ausserhalb des DHCP Pools liegt (28)

Frage von Mar-west zum Thema LAN, WAN, Wireless ...

Windows Server
Server 2008R2 startet nicht mehr (Bad Patch 0xa) (18)

Frage von Haures zum Thema Windows Server ...

Outlook & Mail
Outlook 2010 findet ost datei nicht (18)

Frage von Floh21 zum Thema Outlook & Mail ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (17)

Frage von Unwichtig zum Thema Netzwerkmanagement ...