| 
		|  Willkommen |  
	|  |  
 
		|  myGully |  
	|  |  
 
		|  Links |  
	|  |  
 
		|  Forum |  
	|  |  
 |  | 
	
		|  |  
	
	
		
	
	
	
		|  08.03.13, 23:25 | #1 |  
	| Anfänger 
				 
				Registriert seit: Mar 2010 
					Beiträge: 27
				 
		
			
				 Bedankt: 7 
			
		
	      | 
				 [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
 |  
	|   |   |  
	
		
	
	
	
		|  08.03.13, 23:43 | #2 |  
	| Mitglied 
				 
				Registriert seit: Jul 2012 
					Beiträge: 381
				 
		
			
				 Bedankt: 72 
			
		
	      | 
 
			
			Teste mal 
	Code: if exist "C:\Users\%USER%\Documents\My Games\Darksiders\" echo Ordner |  
	|   |   |  
	
		
	
	
	
		|  09.03.13, 02:11 | #3 |  
	| Anfänger 
				 
				Registriert seit: Mar 2010 
					Beiträge: 27
				 
		
			
				 Bedankt: 7 
			
		
	      | 
 
			
			
	Zitat: 
	
		| 
					Zitat von fryx  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
		 |  
	|   |   |  
	
		
	
	
	
		|  09.03.13, 08:52 | #4 |  
	| Mitglied 
				 
				Registriert seit: Jul 2012 
					Beiträge: 381
				 
		
			
				 Bedankt: 72 
			
		
	      | 
 |  
	|   |   |  
	
		
	
	
	
		|  09.03.13, 22:02 | #5 |  
	| Rentner 
				 
				Registriert seit: May 2012 
					Beiträge: 39
				 
		
			
				 Bedankt: 808 
			
		
	      | 
 
			
			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 |  
	|   |   |  
	
		
	
	
	
		|  11.03.13, 22:40 | #6 |  
	| Anfänger 
				 
				Registriert seit: Mar 2010 
					Beiträge: 27
				 
		
			
				 Bedankt: 7 
			
		
	      | 
 
			
			
	Zitat: 
	
		| 
					Zitat von Kravtwerk  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
		 |  
	|   |   |  
	
		
	
	
	
	
	| 
	|  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 
 HTML-Code ist Aus. 
 |  |  |  Alle Zeitangaben in WEZ +1. Es ist jetzt 01:24 Uhr. ().
 
	
	
		
	
	
 |