3D Vektorgrafiken in einer Dos Box zu sehen

Moderators: Hacker, Stefan2, white
Code: Select all
T:\Example\sdir 7 , . ; & äöüßÄÖÜß.ext äöüÄÖÜß\source , . ; & äöüßÄÖÜß.ext äöüÄÖÜß
Code: Select all
@for %%e in ("%~1") do goto Start0
Code: Select all
if not "%~1"=="" goto Start0
Code: Select all
for %%i in (reg.exe chcp.com) do (
if not exist "%SystemRoot%\system32\%%i" if not exist "%SystemRoot%\%%i" echo %%i nicht gefunden! && goto NoCpSwitch
)
Code: Select all
for %%e in ("%cpActive%") do for %%f in ("%cpOEM%") do goto Start
Code: Select all
if not "%cpOEM%"=="" if not "%cpActive%"=="" goto Start
Code: Select all
if "j"=="J" (echo blub) ELSE (echo blubsi)
Code: Select all
for /F "usebackq tokens=* delims= " %%e in (%fnHLScan%) do call :ParseLine "%%~e"
Hätte ich bisher auch, hier habe ich solche Vergleiche aber absichtlich vermieden, wann immer es ging,Ich hätte das so gelöst:Code: Select all
if not "%~1"=="" goto Start0
Ja, steht auch in der readme.txt. Dachte ich mir, dass die keiner liest.die reg.exe gibt's im ResKit
Würde bei mir z.B. nicht funktionieren, weil die reg.exe woanders liegt - die manuell von der CD entpackte ist in einem Tools-Verzeichnis gelandet, das auch im Suchpfad enthalten ist.Ist auch viel weniger zu schreiben. Zugegeben: Es wird keine Fehlermeldung ausgegeben, wenn die zwar existierende Datei nicht korrekt arbeitet, aber wann kommt das mal vor...Code: Select all
for %%i in (reg.exe chcp.com) do ( if not exist "%SystemRoot%\system32\%%i" if not exist "%SystemRoot%\%%i" echo %%i nicht gefunden! && goto NoCpSwitch )
Habe ich vermieden wegen des Fehlers bei konsortium, siehe erster Punkt.Prüfst du mit dieser Zeile den Inhalt der Variablen?Ich würde das so machen:Code: Select all
for %%e in ("%cpActive%") do for %%f in ("%cpOEM%") do goto Start
Code: Select all
if not "%cpOEM%"=="" if not "%cpActive%"=="" goto Start
Naja, da bei der ersten Fundstelle der zweiten Variable eh abgebrochen wird und normalerweise beide aus einer einzelnen Zahl bestehen,Denn bedenke: for arbeitet ggf. mehrfach pro Klammerinhalt, if prüft immer nur einmal.
Danke, danke. Hoffentlich läuft's auch bei konsortium...Ansonsten: großartige Arbeit
Ja, das trimmt noch ein paar Spaces weg, die es als Separator aussortiert.Eine Frage noch: Ist das Leerzeichen beinach delims= im Abschnitt Start Absicht?Code: Select all
for /F "usebackq tokens=* delims= " %%e in (%fnHLScan%) do call :ParseLine "%%~e"
OK, aber es geht trotzdem einfacherWürde bei mir z.B. nicht funktionieren, weil die reg.exe woanders liegt - die manuell von der CD entpackte ist in einem Tools-Verzeichnis gelandet, das auch im Suchpfad enthalten ist.
Code: Select all
for %%i in (reg.exe chcp.com) do (
%%i /? > NUL 2> NUL
if errorlevel 1 echo %%i nicht gefunden! & goto NoCpSwitch
)
Code: Select all
for %%i in (reg.exe chcp.com) do (
%%i /? > NUL 2> NUL || echo %%i nicht gefunden! & set err=1
)
if not "%err%"=="" goto NoCpSwitch
Ich arbeite allerdings grade an einer Lösung, wie man den Pfad durchsuchen kann. Mal sehn, ob das was wird...
Hilfe und Support wrote:%~$PATH:I Durchsucht die in der Umgebungsvariablen PATH aufgeführten Verzeichnisse und erweitert %I zu dem voll gekennzeichneten Namen der ersten Übereinstimmung. Wurde der Name der Umgebungsvariablen nicht festgelegt oder die Datei nicht gefunden, gibt der Parameter eine leere Zeichenfolge zurück.
Ansonsten ist es ja toll, dass Ihr Euch soviel Muehe gebt und wenn Ihr es als sportliche Herausforderung seht, ist alles ok. Nur, wie schon geschrieben, kann konsortiums Aufgabe mittels rsync als Einzeiler geloest werden.Hilfe und Support wrote:%~dp$PATH:I Durchsucht die in der Umgebungsvariablen PATH aufgeführten Verzeichnisse und erweitert %I zu dem Laufwerkbuchstaben und Pfad der ersten Übereinstimmung.
Für den Anfang:Ich arbeite allerdings grade an einer Lösung, wie man den Pfad durchsuchen kann. Mal sehn, ob das was wird...
Code: Select all
for %%e in (.;%path%) do if exist "%%~e\%~1" echo "%%~e\%~1" & rem goto :EOF
Uni* kennt keine Laufwerksbuchstaben, weshalb Syntax fuer Quell- und Ziellaufwerk ein klein wenig anders ist:StatusQuo wrote:Ich konnte das noch nicht testen, weil rsync auf meinem Laufwerk einen Fehler meldet:The source and destination cannot both be remote.
rsync error: syntax or usage error (code 1) at main.c(1068) [receiver=2.6.9]
Ja. Wenn Du willst sogar via FTP (sofern es der FTP-Server auch unterstuetzt).StatusQuo wrote:Für Kopien auf der gleichen Partition hab ich das auch schon mal benutzt - aber bist Du Dir wirklich sicher,
dass es Hardlinks auch auf eine andere Platte übertragen kann?
Ich konnte das noch nicht testen, weil rsync auf meinem Laufwerk einen Fehler meldetNur, wie schon geschrieben, kann konsortiums Aufgabe mit rsync mit einem Einzeiler geloest werden.
Bzw. für zwei Verzeichnisangaben D:\dir bzw. d:\dir\:The source and destination cannot both be remote.
rsync error: syntax or usage error (code 1) at main.c(1068) [receiver=2.6.9]
Für Kopien auf der gleichen Partition hab ich das schon mal benutzt - aber bist Du Dir wirklich sicher,rsync: Failed to exec ssh: No such file or directory (2)
rsync error: error in IPC code (code 14) at pipe.c(86) [receiver=2.6.9]
rsync: connection unexpectedly closed (0 bytes received so far) [receiver]
rsync error: error in rsync protocol data stream (code 12) at io.c(453) [receiver=2.6.9]
Ah, stimmt, da war mal was.Windows: C:\
CygWin: /cygwin/c/
Y:>rsync "/cygwin/y/tmp/__test24 spacepath/" "/cygwin/y/tmp/__test24 spacepath2/"
rsync: link_stat "/cygwin/y/tmp/__test24 spacepath/." failed: No such file or directory (2)
rsync: mkdir "/cygwin/y/tmp/__test24 spacepath2" failed: No such file or directory (2)
rsync error: error in file IO (code 11) at main.c(529) [receiver=2.6.9]
rsync: connection unexpectedly closed (8 bytes received so far) [sender]
rsync error: error in rsync protocol data stream (code 12) at io.c(453) [sender=2.6.9]
Y:>rsync "/cygwin/y/tmp/__test24 spacepath" "/cygwin/y/tmp/__test24 spacepath2"
rsync: link_stat "/cygwin/y/tmp/__test24 spacepath" failed: No such file or directory (2)
rsync: push_dir#3 "/cygwin/y/tmp" failed: No such file or directory (2)
rsync error: errors selecting input/output files, dirs (code 3) at main.c(565) [receiver=2.6.9]
rsync: connection unexpectedly closed (8 bytes received so far) [sender]
rsync error: error in rsync protocol data stream (code 12) at io.c(453) [sender=2.6.9]
Y:>rsync "/cygwin/y/tmp/__test24 spacepath/reg.exe" "/cygwin/y/tmp/__test24 spacepath2/reg.exe"
rsync: link_stat "/cygwin/y/tmp/__test24 spacepath/reg.exe" failed: No such file or directory (2)
rsync: push_dir#3 "/cygwin/y/tmp/__test24 spacepath2" failed: No such file or directory (2)
rsync error: errors selecting input/output files, dirs (code 3) at main.c(565) [receiver=2.6.9]
rsync: connection unexpectedly closed (8 bytes received so far) [sender]
rsync error: error in rsync protocol data stream (code 12) at io.c(453) [sender=2.6.9]
Die Betonung lag auf Hardlinks. Naja, wenn ich wieder etwas Zeit habe, lese ich mich da nochmal ein (rsync)...Ja. Wenn Du willst sogar via FTP (sofern es der FTP-Server auch unterstuetzt).
Ja, auch Hardlinks.Die Betonung lag auf Hardlinks
Code: Select all
rsync -auH /cygdrive/c/TEMP/test /cygdrive/d/TEMP
Hurra, mit /cygdrive/ (statt /cygwin/ wie oben) funktioniert das hier tatsächlich - inklusive Hardlinks.rsync -auH /cygdrive/c/TEMP/test /cygdrive/d/TEMP
Wenn du wissen möchtest, wie die Pfade zu deinen Laufwerken unter Cygwin gemappt sind, brauchst du nur mount eingeben. Die Pfade können je nach Installation verschieden sein! Man kann das auch ändern.StatusQuo wrote:2norfie²Ah, stimmt, da war mal was.Windows: C:\
CygWin: /cygwin/c/
Code: Select all
set err=
for %%K in (reg.exe chcp.com) do (
if not exist ".\%%K" if "%%~$PATH:K"=="" echo "%%K" nicht gefunden! & set err=1
)
if not "%err%"=="" goto NoCpSwitch