nistra
Goto Top

Script läuft nicht

Hallo zusammen.

Ich versuche immer noch, aus diversen Pfaden Ordner zu kopieren, ... aber bei XP( mit Lizenz in VM) läuft das nicht...

Ich möchte diverse Ordner auf den Desktop kopieren, ... aber bei Outlook Express gehts garnicht...

In der Eingabeaufforderung sehe ich auch die versteckten Dateien/Ordner nicht...

Mit "dir /a:h" sehe ich sie, ... dann komme ich weiter bis zum Outlook Express-Ordner...

Aber als Batch läufts nicht, ... das ist ja wirklich ein Script für Anfänger, ... aber ich schaffs trotzdem nicht...

Hoffe ihr könnt helfen...

LG nistra
(jetzt das Script(chen))
@Echo off
echo.
echo Dieses Script sucht automatisch Ihren:
echo.
echo      E-Mail-Ordner
echo.
echo      Favoriten-Ordner
echo.
echo      Adress-Ordner
echo.
echo Sie finden die Ordner auf dem Desktop.
echo.
echo Geben Sie bitte Ihren Benutzernamen ein: 
echo.
echo.

set /P user="Benutzername: "  
echo.
echo.

if exist C:\"Dokumente und Einstellungen"\%user%\Anwendungsdaten\Thunderbird\Profiles (  
xcopy C:\"Dokumente und Einstellungen"\%user%\Anwendungsdaten\Thunderbird\Profiles /qe C:\"Dokumente und Einstellungen"\%user%\Desktop\  

dir /a:h

if exist C:\"Dokumente und Einstellungen"\%user%\"Lokale Einstellungen"\Anwendungsdaten\Identities\"{*-*-*-*-*}"\Microsoft\"Outlook Express" (  
xcopy C:\"Dokumente und Einstellungen"\%user%\"Lokale Einstellungen"\Anwendungsdaten\Identities\"{*-*-*-*-*}"\Microsoft\"Outlook Express" /qe c:\"Dokumente und Einstellungen"\%user%\Desktop\OE\  

cls

)) else (

pause>nul 

)

Content-Key: 228500

Url: https://administrator.de/contentid/228500

Printed on: April 19, 2024 at 08:04 o'clock

Member: bastla
Solution bastla Feb 02, 2014, updated at Feb 04, 2014 at 21:50:08 (UTC)
Goto Top
Hallo nistra!

Mit Wildcards mitten in einer Pfadangabe wird das nix - daher (ungetestet) eher so:
for /f "delims=" %%i in ('dir /b/ad "C:\Dokumente und Einstellungen\%user%\Lokale Einstellungen\Anwendungsdaten\Identities\{*-*-*-*-*}"') do set "ID=%%i"  
if exist "C:\Dokumente und Einstellungen\%user%\Lokale Einstellungen\Anwendungsdaten\Identities\%ID%\Microsoft\Outlook Express" (  
BTW: Das Ziel in Zeile 22 sollte vielleicht eher "C:\Dokumente und Einstellungen\%user%\Desktop\Thunderbird\" sein ...

Grüße
bastla
Member: nistra
nistra Feb 03, 2014 at 19:04:49 (UTC)
Goto Top
Hallo bastla...

Bin gerade erst zuhause angekommen und hab´ es direkt ausprobiert...

Funktioniert leider nicht...

Kann aber an meinem Nichtwissen liegen...

Wäre nett, wenn du mir kurz schreiben könntest, was die Zeichen zu bedeuten haben, ... wenn du keine Zeit/Lust dazu hast, ... dann ist es auch ok...
Aber es geht leider nicht, obwohl der OE-Ordner definitiv vorhanden ist...

Bei dem Script, ganz oben, funktionieren die Dinge..., ... außer Outlook Express mit XP...

LG nistra
Member: nistra
nistra Feb 03, 2014 at 19:05:44 (UTC)
Goto Top
Sorry, hatte das Scriptchen vergessen...

@echo off
echo.
echo Dieses Script sucht automatisch Ihren:
echo.
echo E-Mail-Ordner
echo.
echo Favoriten-Ordner
echo.
echo Adress-Ordner
echo.
echo Sie finden die Ordner auf dem Desktop.
echo.
echo Geben Sie bitte Ihren Benutzernamen ein:
echo.
echo.

set /P user="Benutzername: "
echo.
echo.

for /f "delims=" %%i in ('dir /b/ad "C:\Dokumente und Einstellungen\%user%\Lokale Einstellungen\Anwendungsdaten\Identities\{*-*-*-*-*}"') do set "ID=%%i" 02.if exist "C:\Dokumente und Einstellungen\%user%\Lokale Einstellungen\Anwendungsdaten\Identities\%ID%\Microsoft\Outlook Express" (

cls

) else (

pause>nul

)
Member: bastla
Solution bastla Feb 03, 2014, updated at Feb 04, 2014 at 21:50:01 (UTC)
Goto Top
Hallo nistra!
for /f "delims=" %%i in ('dir /b/ad "C:\Dokumente und Einstellungen\%user%\Lokale Einstellungen\Anwendungsdaten\Identities\{*-*-*-*-*}"') do set "ID=%%i" 02.if exist "C:\Dokumente und Einstellungen\%user%\Lokale Einstellungen\Anwendungsdaten\Identities\%ID%\Microsoft\Outlook Express" (
sollen einerseits 2 Zeilen sein:
for /f "delims=" %%i in ('dir /b/ad "C:\Dokumente und Einstellungen\%user%\Lokale Einstellungen\Anwendungsdaten\Identities\{*-*-*-*-*}"') do set "ID=%%i"  
if exist "C:\Dokumente und Einstellungen\%user%\Lokale Einstellungen\Anwendungsdaten\Identities\%ID%\Microsoft\Outlook Express" (  
Andererseits waren diese 2 Zeilen nur als Ersatz Deiner Zeile 26 oben gedacht - den Kopierbefehl musst Du natürlich weiterhin verwenden (allerdings mit dem Quellpfad "C:\Dokumente und Einstellungen\%user%\Lokale Einstellungen\Anwendungsdaten\Identities\%ID%\Microsoft\Outlook Express") ...
Wäre nett, wenn du mir kurz schreiben könntest, was die Zeichen zu bedeuten haben
Welche Zeichen?

Grüße
bastla
Member: nistra
nistra Feb 04, 2014 at 11:29:01 (UTC)
Goto Top
Hallo bastla...

Danke schonmal...
Bin unterwegs, kanns erst abends ausprobieren...

Mit den Zeichen meinte ich Variablen/Befehle/Schalter...
Habe jetzt ein schönes altes DOS-Buch, darin ist leider nicht alles erklärt...
Die interne Hilfe ist zwar gut, ... aber ich bekomme es nicht ausgedruckt (USB-Drucker)...

Melde mich später wieder...
VG nistra
Member: nistra
nistra Feb 04, 2014 at 20:39:29 (UTC)
Goto Top
Hallo zusammen...
Hallo bastla...

Leider klappt das nicht...
Ich vermute aber, dass der Fehler bei mir liegt, ... nur ich komme nicht auf die Lösung...

C:\Dokumente und Einstellungen\%user%\Lokale Einstellungen\Anwendungsdaten\Identities\{74BDBB4D-46AA-4E33-8025-B52E31EC81A7}\Microsoft\Outlook Express

Das ist der Originalpfad in Windows.

Die Zahlenkombination ({74BDBB4D-46AA-4E33-8025-B52E31EC81A7}) im Pfad, wird willkürlich von Outlook Express gewählt, wenn man Outlook Express einrichtet.

Ich hatte das Verzeichnis versucht mit {*-*-*-*-*} in der Batchdatei so "einzubauen", damit es für jede Zahlen/Ziffernkombination gültig ist...

... dir /a:h hatte ich in der Eingabeaufforderung eingegeben, weil man sonst den Rest des Pfades garnicht sehen könnte...

Das sieht man nicht, weil versteckt >>> Lokale Einstellungen\Anwendungsdaten\Identities\{74BDBB4D-46AA-4E33-8025-B52E31EC81A7}\Microsoft\Outlook Express

Erst dir /a:h macht es sichtbar...

Hoffe du oder jemand aus dem Forum hat eine Lösung...
Ich wußte nicht, dass es bei OE solche Probleme gibt..., ... mit sämtlichen E-Mail-Programmen, Favoriten, Kontakten(Adressbüchern) funktioniert das o.g. Script...

Viele nutzen noch XP mit OE, deshalb ist es mir sehr wichtig...

LG nistra
Member: bastla
Solution bastla Feb 04, 2014 updated at 21:49:55 (UTC)
Goto Top
Hallo nistra!
Die Zahlenkombination ({74BDBB4D-46AA-4E33-8025-B52E31EC81A7}) im Pfad, wird willkürlich von Outlook Express gewählt, wenn man Outlook Express einrichtet.
Mir ist schon klar, wie die entsprechende Struktur aussieht, aber: Bei mir funktioniert
dir /b/ad "C:\Dokumente und Einstellungen\%user%\Lokale Einstellungen\Anwendungsdaten\Identities\{*-*-*-*-*}"
nter XP - egal, ob der Ordner versteckt ist oder nicht, und die oben dargestellte "for"-Schleife sorgt nur dafür, dass der variable Ordnername in %ID% zwischengespeichert wird.

Da der Rest des Pfades bekannt ist, ergibt sich dann daraus eben
"C:\Dokumente und Einstellungen\%user%\Lokale Einstellungen\Anwendungsdaten\Identities\%ID%\Microsoft\Outlook Express"
Grüße
bastla
Member: nistra
nistra Feb 04, 2014 at 21:19:00 (UTC)
Goto Top
Hi bastla...
Danke für deinen Einsatz...

Es läuft nicht, ... ich finde einfach den Fehler nicht...

Das hatte ich geändert, ... aber es will nicht...

LG nistra

@echo off
echo.
echo Dieses Script sucht automatisch Ihren:
echo.
echo E-Mail-Ordner
echo.
echo Favoriten-Ordner
echo.
echo Adress-Ordner
echo.
echo Sie finden die Ordner auf dem Desktop.
echo.
echo Geben Sie bitte Ihren Benutzernamen ein:
echo.
echo.

set /P user="Benutzername: "
echo.
echo.


for /f "delims=" %%i in ('dir /b/ad "C:\Dokumente und Einstellungen\%user%\Lokale Einstellungen\Anwendungsdaten\Identities\{*-*-*-*-*}"') do set "ID=%%i"


if exist "C:\Dokumente und Einstellungen\%user%\Lokale Einstellungen\Anwendungsdaten\Identities\%ID%\Microsoft\Outlook Express" (
xcopy "C:\Dokumente und Einstellungen\%user%\Lokale Einstellungen\Anwendungsdaten\Identities\ /qe c:\Dokumente und Einstellungen\%user%\Desktop\MAILORDNER Outlook Express"

cls

) else (

pause>nul

)
Member: bastla
Solution bastla Feb 04, 2014 updated at 21:48:23 (UTC)
Goto Top
Hallo nistra!

Verwende bitte wieder "Code"-Formatierung!

Mit
xcopy "C:\Dokumente und Einstellungen\%user%\Lokale Einstellungen\Anwendungsdaten\Identities\%ID%\Microsoft\Outlook Express" /qe "c:\Dokumente und Einstellungen\%user%\Desktop\MAILORDNER Outlook Express\"
sollte auch das Kopieren klappen ...
BTW: Wenn der Batch für User gedacht ist, die ohnehin nur Daten aus ihrem eigenen Profil kopieren sollen / können, ließe sich die Frage nach dem Usernamen einsparen:
for /f "delims=" %%i in ('dir /b/ad "%userprofile%\Lokale Einstellungen\Anwendungsdaten\Identities\{*-*-*-*-*}"') do set "ID=%%i"  


if exist "%userprofile%\Lokale Einstellungen\Anwendungsdaten\Identities\%ID%\Microsoft\Outlook Express" (  
    xcopy "%userprofile%\Lokale Einstellungen\Anwendungsdaten\Identities\%ID%\Microsoft\Outlook Express" /qe "%userprofile%\Desktop\MAILORDNER Outlook Express\"  
)
Grüße
bastla
Member: nistra
nistra Feb 04, 2014 at 21:48:16 (UTC)
Goto Top
Hi bastla...

Jetzt funktionierts face-smile face-smile face-smile

Habe mein schlaues Buch (neu, aber von 1996) vor mir liegen, ebenso deine Antworten...

Das wollte ich noch vorm schlafengehen schaffen (mit deiner Hilfe)...

Ich weiß zwar nicht warum, aber es funktioniert...

Das Script stelle ich hier ganz unten ein...

Es geht um austauschbare Benutzerkonten..., ... dadurch muss ich die Ordner nicht sichtbar machen, ... geht eh immer soviel Zeit bei drauf...

Vielen Dank noch mal..., werde auch deine neue Variante testen, ... aber nicht mehr heute...
LG nistra

Das funktionierende Script:

@echo off
echo.
echo Dieses Script sucht automatisch Ihren:
echo.
echo E-Mail-Ordner
echo.
echo Favoriten-Ordner
echo.
echo Adress-Ordner
echo.
echo Sie finden die Ordner auf dem Desktop.
echo.
echo Geben Sie bitte Ihren Benutzernamen ein:
echo.
echo.

set /P user="Benutzername: "
echo.
echo.


for /f "delims=" %%i in ('dir /b/ad C:\"Dokumente und Einstellungen"\%user%\"Lokale Einstellungen"\Anwendungsdaten\Identities\{*-*-*-*-*}') do set "ID=%%i"


if exist C:\"Dokumente und Einstellungen"\%user%\"Lokale Einstellungen"\Anwendungsdaten\Identities\%ID%\Microsoft\"Outlook Express" (


xcopy C:\"Dokumente und Einstellungen"\%user%\"Lokale Einstellungen"\Anwendungsdaten\Identities\%ID%\Microsoft\"Outlook Express" /qe c:\"Dokumente und Einstellungen"\%user%\Desktop\"MAILORDNER Outlook Express"\


cls

) else (

pause>nul

)