Top-Themen

Aktuelle Themen (A bis Z)

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 Batch Probleme Ausrufezeichen werden nicht interpretiert

Mitglied: -Kidow-

-Kidow- (Level 1) - Jetzt verbinden

10.10.2010 um 16:05 Uhr, 10352 Aufrufe, 8 Kommentare

Hallo ihr,

ich hab folgendes Problem mit einer Batch-Datei.

Hier mal mein Code:
@echo off
Setlocal EnableDelayedExpansion
for %%i in (11 25) do (
mvn site
md %%i
SET dir=%cd%
for /F %%j in ('dir /s /b "coverage.xml"') do (
SET sbasedir=%%j
SET sbasedir=!sbasedir:~0,-36!
SET sbasedir=!!sbasedir:%dir%=!!
SET sbasedir=!sbasedir:~1!
ren "%%j" %%i_!sbasedir!.xml
for /F %%t in ('dir /s /b "%%i_!sbasedir!.xml"') do (
move %%t %%i
)
)
)

Die .bat soll alle Dateien suchen, die coverage.xml heißen, diese nach ihrem Projekt-Ordner benennen und in ihren Versions-Ordner(hier die 11 und die 25) schieben. Ich hab jetzt das Problem, dass alles super läuft sobald ich mvn site rausnehme . Wenn mvn site allerdings drin steht, kommts mir so vor, als würden die ! nicht mehr interpretiert werden. Hatte einer vielleicht ein ähnliches Problem und kann mir helfen?

Ich verwende den Maven Site Befehl, um passend zum Projekt eine Projektübersicht(also hier die coverage.xml) zu erstellen.

Ich dank euch schonmal im vorraus!
Mitglied: 60730
10.10.2010 um 20:14 Uhr
Moin,

3 Dinge:

  • verwende bitte Code Blöcke
  • bei Problembatchen kein führendes @echo off
  • bei EnableDelayedExpansion keine %% sondern !!

Wenn mvn site allerdings drin steht, kommts mir so vor
Da mir mvn site genausowenig sagt, wie jedem anderen außer dir - solltest du dir deren Inhalt genauer ansehen.

Gruß
Bitte warten ..
Mitglied: bastla
10.10.2010 um 20:22 Uhr
Hallo -Kidow- und willkommen im Forum!

Das "!"-Problem ist der Preis, den Du für die Verwendung von "delayedExpansion" zahlen musst - daher ist oft eine Vermeidungsstrategie vorteilhafter, zB (ungestest):
01.
@echo on & Setlocal 
02.
for %%i in (11 25) do ( 
03.
    mvn site 
04.
    md "%%i" 
05.
    for /F %%j in ('dir /s /b "coverage.xml"') do set "sbasedir=%%j" & call :ProcessLine "%%i" "%%j" 
06.
07.
goto :eof 
08.
 
09.
:ProcessLine     
10.
SET "sbasedir=sbasedir:~0,-36" 
11.
call SET "sbasedir=%%sbasedir:%cd%=%%" 
12.
SET "sbasedir=%sbasedir:~1%" 
13.
ren %2 "%~1_%sbasedir%.xml" 
14.
for /F %%t in ('dir /s /b "%1_%sbasedir%.xml"') do move "%%t" %1 
15.
goto :eof
Grüße
bastla
Bitte warten ..
Mitglied: jeb-the-batcher
10.10.2010 um 21:30 Uhr
* bei EnableDelayedExpansion keine %% sondern !!

Aber wie soll das denn gehen?

01.
@echo off 
02.
setlocal EnableDelayedExpansion 
03.
 
04.
for  %%a IN ("XYZ") DO ( 
05.
  echo per=%%a 
06.
  echo exc=!!a 
07.
)
Wäre schön wenn es funktionieren würde, klappt aber leider nicht (oder ich habe deinen Kommentar nicht verstanden).

Gruß

jeb
Bitte warten ..
Mitglied: jeb-the-batcher
10.10.2010 um 21:36 Uhr
Hallo bastla,

so wie ich Kidow verstehe ist das Problem, das die !var! Auflösung nicht mehr läuft, nicht das verschwinden von Ausrufezeichen in der Ausgabe.

Meiner Ansicht nach ist DelayedExpansion in den meisten Fällen die bessere Wahl, einfach weil die ganzen Sonderzeichen nicht weiter verarbeitet werden.
Es bleibt nur das Problem, irgendwie "problematische" Strings mit "!" und "^" in eine Variable zu bekommen, sobald man nur mit den Variablen arbeiten kann, gibt es das "!"-Problem ja nicht mehr.

Gruß
jeb
Bitte warten ..
Mitglied: bastla
10.10.2010 um 21:44 Uhr
Hallo jeb!
so wie ich Kidow verstehe ist das Problem, das die !var! Auflösung nicht mehr läuft, nicht das verschwinden von Ausrufezeichen in der Ausgabe.
... was bei Nicht-Verwendung der "delayedExpansion" aber eigentlich egal sein sollte (allerdings habe ich tatsächlich nur oberflächlich drübergeschaut und den Batch nicht wirklich nachvollzogen) ...

Grüße
bastla
Bitte warten ..
Mitglied: -Kidow-
11.10.2010 um 12:17 Uhr
Hallo ihr,

erst einmal dickes Dankeschön für die Hilfe! Ich hab es einmal mit dem Beispiel von bastla versucht und bekomme nin leider folgenden Fehler: "Ungültiger Versuch, ein Sprungziel außerhalb einer Batchdatei aufzurufen." Ich kann leider nicht recht was damit anfangen, da die .bat Datei mal wieder ohne den mvn site Befehl super funktioniert. Könntet ihr mir da eventuell nocheinmal weiterhelfen? Google irgendwie schon relativ lange und komm auf keinen grünen Zweig hier!

Um noch kurz zu erklären was Mvn site macht : Maven ist ein Build-Tool und erstellt unteranderem mit mvn site erstellt eine Übersichtsseite(welche Klassen enthalten sind, wer daran gearbeitet hat) zu einem Projekt. Diese Daten benötige ich pro Version des Projekts.


Danke schoneinmal
Bitte warten ..
Mitglied: -Kidow-
12.10.2010 um 11:46 Uhr
Hallo,

es hat geklappt! Hab ein call vor dem mvn site Befehl gesetzt und jetzt funktioniert es. Danke an euch nochmal!
Bitte warten ..
Mitglied: bastla
12.10.2010 um 13:12 Uhr
Hallo -Kidow-!
es hat geklappt!
Das ist erfreulich - und wenn Du erwähnt hättest, dass mit "mvn" ein weiterer Batch aufgerufen wird, hätten wir das vielleicht schon früher hinbekommen ....

Grüße
bastla
Bitte warten ..
Ähnliche Inhalte
Drucker und Scanner
Jeder Drucker interpretiert Farbe anders
gelöst Frage von 118080Drucker und Scanner13 Kommentare

Moin Habe ein kurioses Problem Bei uns werden die Preislisten in Excel durch komplexe Rechnungen erstellt. Dann wird ein ...

Debian

Passwörter in Skripten die mit Dollar-Ausrufezeichen beginnen

gelöst Frage von crackhawkDebian5 Kommentare

Hallo zusammen! Sorry für den Titel, aber $ und ! sind da leider nicht erlaubt. Ich habe ein Problem ...

E-Mail

Email Alarm für Videoüberwachung als Spam interpretiert

Frage von Volt-TecE-Mail9 Kommentare

Hallo Zusammen, ich benötige dringend einen gängigen Tipp für folgendes Szenario. Ich errichte intelligente Videoüberwachungslösungen, welche sehr wenig Fehlalarme ...

Batch & Shell

FOR Schleife mit DIR verliert Ausrufezeichen

Frage von RaidManBatch & Shell7 Kommentare

Hallo Kenner und Könner, leider hadere ich immer noch mit den Sonderzeichen in meiner BATCH Jetzt ist es das ...

Neue Wissensbeiträge
Vmware
VMware Update für den ESXi 5.5 verfügbar
Information von sabines vor 20 StundenVmware

Nach dem ganzen Hickhack um Update mit Microcode Anpassungen und Rückzug, gibt es nun für den ESXi 5.5 ein ...

CPU, RAM, Mainboards

Meltdown und Spectre: Intel zieht Microcode-Updates für Prozessoren zurück

Information von keine-ahnung vor 1 TagCPU, RAM, Mainboards5 Kommentare

Moin, extrem lutztig. Nur gut, dass ich noch nicht beim Probanden-Bingo mitgemacht habe :-) LG, Thomas

Router & Routing
PfSense als Addon auf QNAP
Information von magicteddy vor 1 TagRouter & Routing7 Kommentare

Moin, für Spielereien eine ganz nette Idee aber ich fürchte das soetwas auch als echte Firewall genutzt wird: In ...

Datenschutz

Teamviewer kommt für IoT-Geräte wie den Raspberry Pi

Information von magicteddy vor 1 TagDatenschutz1 Kommentar

Moin, jetzt werden IoT Geräte endgültig zur Wanze? Anscheinend kann man auf einem Dashboard seine Geräte visualisieren Ich stelle ...

Heiß diskutierte Inhalte
Netzwerkmanagement
Preis für Wartungsvertrag ok?
gelöst Frage von a-za-zNetzwerkmanagement26 Kommentare

Hallo! Mal ne Frage, weil ich mich mit dem akzeptablen Preis für einen Reaktionszeitvertrag nicht auskenne. Meine Firma hat ...

Windows Server
TEMP-Profile
gelöst Frage von Forseti2003Windows Server21 Kommentare

Guten Morgen, wer kennt sie nicht, die lieben Temporären Benutzerprofile, vorallem immer dann, wenn man sie am wenigsten braucht. ...

Multimedia & Zubehör
Welches Tablet für die Verkäufer?
Frage von Hendrik2586Multimedia & Zubehör16 Kommentare

Guten Morgen meine Lieben, vielleicht könnt ihr mir ja helfen. Es geht um unsere Außendienstmitarbeiter /Verkäufer. Sie sollen demnächst ...

Ubuntu
Ubuntu - Routing mit 2 Netzwerkkarten?
Frage von gabrixlUbuntu13 Kommentare

Hei Folgende Situation: Ich habe zwei virtuelle Maschinen: 1 - Server für DHCP, DNS und Routing - Netzwerkkarte 1: ...