myGully.com Boerse.SH - BOERSE.AM - BOERSE.IO - BOERSE.IM Boerse.BZ .TO Nachfolger
Zurück   myGully.com > Computer & Technik > Programmierung
Seite neu laden

[Batch] Prüfen ob Verknüpfung vorliegt

Willkommen

myGully

Links

Forum

 
Antwort
Themen-Optionen Ansicht
Ungelesen 08.03.13, 22:25   #1
Breitling1992
Anfänger
 
Registriert seit: Mar 2010
Beiträge: 27
Bedankt: 7
Breitling1992 ist noch neu hier! | 0 Respekt Punkte
Standard [Batch] Prüfen ob Verknüpfung vorliegt

Hi,
ich hoffe ihr könnt mir helfen. Nach langer suche im Inet hab ich zwar auch schon einige Lösungsansätze gefunden, leider kam ich damit nicht zurecht - ist meine erste batch datei.

Zur Vorgeschichte, damit Ihr wisst worum es geht - Alle die es nicht interessiert, ab hier ignorieren und unten beim nächsten Absatz weiterlesen. Es geht darum das ich alle Savegames auf einer 2 Festplatte sammeln möchte, sodass wenn ich das System neu aufsetze, ich nicht erst alle Savegames zusammen suchen muss und später wieder einfügen muss. Sprich die eigentlichen Savegames liegen bei mir auf G und dort wo normal der speicherpfad auf c ist, habe ich eine Verknüpfung via mklink eingefügt. Wenn ich nun aber mein System neu aufsetze, muss ich aber jedes mal wieder die Verlinkung neu setzen. Da bei (Aktuell) 80 links es etwas ermüdend ist, dies via Hand zu machen, will ich dies mit einer Batch datei machen. Im großen und ganzen funktioniert auch schon alles. Die Datei prüft ob das Verzeichnis schon existiert, wenn ja wird es umbenannt und dann erst die Verlinkung eingefügt. Das Problem ist, wenn ich die batchdatei ein zweitesmal ausführe, benennt er die schon vorhandene Verknüpfung wieder um und erstellt eine neue, da 'if exist', nicht unterscheidet ob es eine Verknüpfung ist oder ein Verzeichnis.

Lange rede, gar kein sinn: Wie kann ich mit einer batch datei Prüfen ob es sich bei einem Ordner (z.B. C:\Users\%USER%\Documents\My Games\Darksiders) noch um ein Ordner handelt oder es schon eine Verknüpfung ist?

Vielen Dank an jeden der sich Zeit nimmt!

Gruß Breitling
Breitling1992 ist offline   Mit Zitat antworten
Ungelesen 08.03.13, 22:43   #2
fryx
Mitglied
 
Benutzerbild von fryx
 
Registriert seit: Jul 2012
Beiträge: 382
Bedankt: 72
fryx gewöhnt sich langsam dran | 84 Respekt Punkte
Standard

Teste mal


Code:
if exist "C:\Users\%USER%\Documents\My Games\Darksiders\" echo Ordner
__________________
[ Link nur für registrierte Mitglieder sichtbar. Bitte einloggen oder neu registrieren ] | [ Link nur für registrierte Mitglieder sichtbar. Bitte einloggen oder neu registrieren ] | [ Link nur für registrierte Mitglieder sichtbar. Bitte einloggen oder neu registrieren ] |[ Link nur für registrierte Mitglieder sichtbar. Bitte einloggen oder neu registrieren ]
fryx ist offline   Mit Zitat antworten
Ungelesen 09.03.13, 01:11   #3
Breitling1992
Anfänger
 
Registriert seit: Mar 2010
Beiträge: 27
Bedankt: 7
Breitling1992 ist noch neu hier! | 0 Respekt Punkte
Standard

Zitat:
Zitat von fryx Beitrag anzeigen
Teste mal


Code:
if exist "C:\Users\%USER%\Documents\My Games\Darksiders\" echo Ordner
Hey,

immernoch das selbe, er gibt mir bei allen abfragen 'Ordner' aus, also das 'if exist' macht leider kein unterschied zwischen Ordnern und Verknüpfungen.

Gruß Breitling
Breitling1992 ist offline   Mit Zitat antworten
Ungelesen 09.03.13, 07:52   #4
fryx
Mitglied
 
Benutzerbild von fryx
 
Registriert seit: Jul 2012
Beiträge: 382
Bedankt: 72
fryx gewöhnt sich langsam dran | 84 Respekt Punkte
Standard

Code:
dir /al
__________________
[ Link nur für registrierte Mitglieder sichtbar. Bitte einloggen oder neu registrieren ] | [ Link nur für registrierte Mitglieder sichtbar. Bitte einloggen oder neu registrieren ] | [ Link nur für registrierte Mitglieder sichtbar. Bitte einloggen oder neu registrieren ] |[ Link nur für registrierte Mitglieder sichtbar. Bitte einloggen oder neu registrieren ]
fryx ist offline   Mit Zitat antworten
Ungelesen 09.03.13, 21:02   #5
Kravtwerk
Rentner
 
Benutzerbild von Kravtwerk
 
Registriert seit: May 2012
Beiträge: 39
Bedankt: 808
Kravtwerk putzt sich die Zähne mit Knoblauch. | 4158 Respekt PunkteKravtwerk putzt sich die Zähne mit Knoblauch. | 4158 Respekt PunkteKravtwerk putzt sich die Zähne mit Knoblauch. | 4158 Respekt PunkteKravtwerk putzt sich die Zähne mit Knoblauch. | 4158 Respekt PunkteKravtwerk putzt sich die Zähne mit Knoblauch. | 4158 Respekt PunkteKravtwerk putzt sich die Zähne mit Knoblauch. | 4158 Respekt PunkteKravtwerk putzt sich die Zähne mit Knoblauch. | 4158 Respekt PunkteKravtwerk putzt sich die Zähne mit Knoblauch. | 4158 Respekt PunkteKravtwerk putzt sich die Zähne mit Knoblauch. | 4158 Respekt PunkteKravtwerk putzt sich die Zähne mit Knoblauch. | 4158 Respekt PunkteKravtwerk putzt sich die Zähne mit Knoblauch. | 4158 Respekt Punkte
Standard

Kannst du so machen:
Code:
@echo off &setlocal
set "test=C:\Users\%%USER%%\Documents\My Games\Darksiders"
for /d %%i in ("%test%") do set "#=%%~ai"
if not defined # echo.%test% nicht gefunden.&goto :eof
<nul set /p"=%test% ist ein "
if "%#:~0,1%"=="d" if "%#:~8,1%"=="l" (echo.Link.) else (echo.Ordner.) else echo File.
endlocal
__________________
[ Link nur für registrierte Mitglieder sichtbar. Bitte einloggen oder neu registrieren ] & [ Link nur für registrierte Mitglieder sichtbar. Bitte einloggen oder neu registrieren ]
Kravtwerk ist offline   Mit Zitat antworten
Ungelesen 11.03.13, 21:40   #6
Breitling1992
Anfänger
 
Registriert seit: Mar 2010
Beiträge: 27
Bedankt: 7
Breitling1992 ist noch neu hier! | 0 Respekt Punkte
Standard

Zitat:
Zitat von Kravtwerk Beitrag anzeigen
Kannst du so machen:
Code:
@echo off &setlocal
set "test=C:\Users\%%USER%%\Documents\My Games\Darksiders"
for /d %%i in ("%test%") do set "#=%%~ai"
if not defined # echo.%test% nicht gefunden.&goto :eof
<nul set /p"=%test% ist ein "
if "%#:~0,1%"=="d" if "%#:~8,1%"=="l" (echo.Link.) else (echo.Ordner.) else echo File.
endlocal
DANKE! Ich versuche immernoch zu verstehen wie es funktioniert, aber es funktioniert!

Danke!

LG Breitling
Breitling1992 ist offline   Mit Zitat antworten
Antwort


Forumregeln
Du kannst keine neue Themen eröffnen
Du kannst keine Antworten verfassen
Du kannst keine Anhänge posten
Du kannst nicht deine Beiträge editieren

BB code is An
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist Aus.

Gehe zu


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:52 Uhr.


Sitemap

().