burningx2
Goto Top

Mit findstr batch doppelte zeilen einer txt löschen

Hi

Vor einer weile habe ich im netzt einen windows shell befehl gefunden mit welchem man über
die konsole doppelte zeilen in einer textdatei löschen konnte.

Das ganze sah etwa so aus.


C:\Users\Pro>findstr /? "*" C:\Users\Pro\Downloads\fddd.txt > C:\Users\Pro\Downloads\outfile.txt

Leider weis ich die ganaue befehlsfolge nicht mehr eventuell kann mir jemand helfen


Vielen dank

Content-Key: 398708

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

Ausgedruckt am: 19.03.2024 um 03:03 Uhr

Mitglied: 137846
137846 18.01.2019 aktualisiert um 15:43:25 Uhr
Goto Top
Für die direkte Eingabe in die Konsole
Powershell -Executionpolicy Bypass -Command "(gc 'c:\infile.txt') | group | %{$_.Group} | sc 'c:\outfile.txt'"  
Wenn als ganze in eine Batch kommt, musst du die Prozentzeichen verdoppeln.
Mitglied: Burningx2
Burningx2 18.01.2019 um 15:36:21 Uhr
Goto Top
Damit kann ich nichts anfangen ich suche weiterhin meinen

findstr befehl den ich ganz normal über die cmd konsole ausführen kann und nicht extra noch weitere programme installieren muss

Trotzdem danke
Mitglied: Kraemer
Kraemer 18.01.2019 um 15:38:08 Uhr
Goto Top
Zitat von @Burningx2:
extra noch weitere programme installieren muss
bist du da auf einem Windows XP unterwegs?
Mitglied: Burningx2
Burningx2 18.01.2019 um 15:39:49 Uhr
Goto Top
Nein aber ein firmenrechner

Und die lösung hat immer Funktioniert wieso sollte ich jetzt eine andere kompliziertere lösung nutzen?
Mitglied: 137846
137846 18.01.2019 aktualisiert um 15:40:43 Uhr
Goto Top
Zitat von @Burningx2:

Damit kann ich nichts anfangen ich suche weiterhin meinen

findstr befehl den ich ganz normal über die cmd konsole ausführen kann und nicht extra noch weitere programme installieren muss
Musst du nicht, Powershell ist auf allen aktuellen Windosen enthalten wenn du nicht gerade mit einem unsicheren XP unterwegs bist!

kompliziertere lösung nutzen
Der war gut face-big-smile
Mitglied: Kraemer
Kraemer 18.01.2019 um 15:40:44 Uhr
Goto Top
Zitat von @Burningx2:
kompliziertere lösung nutzen?
you made my day!

Mit Batchdatei aus einer .txt doppelte Zeilen löschen
Mitglied: Burningx2
Burningx2 18.01.2019 um 15:42:46 Uhr
Goto Top
Ich habe keine ahnung von powershell befehlen ich habe das obige genuzt das hat nur zu errors geführt


-Executionpoliy : Die Benennung "-Executionpoliy" wurde nicht als Name eines Cmdlet, einer Funktion, einer Skriptdatei
oder eines ausführbaren Programms erkannt. Überprüfen Sie die Schreibweise des Namens, oder ob der Pfad korrekt ist
(sofern enthalten), und wiederholen Sie den Vorgang.
Mitglied: 137846
137846 18.01.2019 aktualisiert um 15:44:59 Uhr
Goto Top
Kein Wunder, du hast da einen Tippfehler eingebaut...
Executionpoliy
Muss
-Executionpolicy lauten
Mitglied: Burningx2
Burningx2 18.01.2019 um 15:44:57 Uhr
Goto Top
Ich?
Ich habe nur von oben copy paste genuzt
Mitglied: 137846
137846 18.01.2019 aktualisiert um 15:46:15 Uhr
Goto Top
Zitat von @Burningx2:

Ich?
Ich habe nur von oben copy paste genuzt
Kopier es einfach nochmal, und stell dich nicht so an.
Mitglied: Burningx2
Burningx2 18.01.2019 um 15:46:09 Uhr
Goto Top
.Group : Die Benennung ".Group" wurde nicht als Name eines Cmdlet, einer Funktion, einer Skriptdatei oder eines
ausführbaren Programms erkannt. Überprüfen Sie die Schreibweise des Namens, oder ob der Pfad korrekt ist (sofern
enthalten), und wiederholen Sie den Vorgang.
In Zeile:1 Zeichen:52
Mitglied: 137846
137846 18.01.2019 aktualisiert um 15:48:38 Uhr
Goto Top
Funktioniert einwandfrei.
Lese die Information darunter, nur wenn es in eine Batch kommt müssen die Prozentzeichen verdoppelt werden! Wenn es direkt in die Konsole gepostet wird, nicht.
Ansonsten hast du einen Anpassungsfehler gemacht. Pfade natürlich anpassen!
Mitglied: Burningx2
Burningx2 18.01.2019 um 15:48:36 Uhr
Goto Top
Ich verstehe nur bahnhof
Mitglied: Pjordorf
Pjordorf 18.01.2019 um 15:50:12 Uhr
Goto Top
Hallo,

Zitat von @Burningx2:
-Executionpoliy : Die Benennung "-Executionpoliy" wurde nicht als Name eines
Zumindest hast du den Fehler mitkopiert bzw. anbgeschrieben. Gib mal in deiner Suchmaschine executionpolicy oder (falsch) executionpoliy ein. Dann siehst du welche Schreibweise wohl richtiger ist face-smile Bedenke, hier sind Menschen am Werkeln - und die können auch mal Fehler machen.

Gruß,
Peter
Mitglied: Burningx2
Burningx2 18.01.2019 um 15:50:35 Uhr
Goto Top
Wenn man einfach mal die frage beantworten würde wie sie oben steht
Warum muss man fragen immer mit einer anderen antwort abspeisen als gefordert wurde?
Mitglied: Burningx2
Burningx2 18.01.2019 um 15:51:44 Uhr
Goto Top
Hab ich kein problem mit Pjordorf ich bin ganz ruhig finde es nicht ok hier von leuten dumm angebmacht zu werden obwohl ich mich freundlich verhalte und einefach nur eine frage beantwortet haben möchte
Mitglied: Kraemer
Kraemer 18.01.2019 um 16:01:39 Uhr
Goto Top
Zitat von @Burningx2:
nur eine frage beantwortet haben möchte
ich habe sie dir beantwortet. Aber hey - rumjammern macht ja viel mehr Spaß...
Mitglied: Pjordorf
Pjordorf 18.01.2019 aktualisiert um 16:25:20 Uhr
Goto Top
Hallo,

Zitat von @Burningx2:
Hab ich kein problem mit
OK

Aber dein
C:\Users\Pro>findstr /? "*" C:\Users\Pro\Downloads\fddd.txt > C:\Users\Pro\Downloads\outfile.txt
liefert dir auch nur die Hilfe zum findstr. Dafür sorgt dein /? und alles was danach kommt wird ignoriert bzw. im Datenmüll entsorgt. Ohne das/? sucht dein Batch in der Datei C:\Users\Pro\Downloads\fddd.txt nach * und gibt dir diese Zeilen wo ein oder mehrere Sternchen (*) Vorkommen in deiner outfile.txt aus wobei der evtl. frühere Inhalt dieser Datei dann auch Überschrieben wird. Durch verdoppeln deiner Umleitung (>) wird es nur angehangen (>>).

Gruß,
Peter
Mitglied: Penny.Cilin
Penny.Cilin 18.01.2019 um 16:43:34 Uhr
Goto Top
Hallo Leute,

der Beitragsersteller schreibt, daß es um einen Firmenrechner geht. Somit kann unter Umständen die Ausführungsrichtlinie (Executionpolicy) nicht verändert werden.

Gruss Penny
Mitglied: Penny.Cilin
Penny.Cilin 18.01.2019 um 17:00:19 Uhr
Goto Top
Hallo,

versuche es mal mit folgendem Befehl:
findstr /rvx /c:" *" eingabedate.txt > ausgabedatei.txt  

Die Angaben eingabedatei.txt und ausgabedatei.txt musst Du sinngemäß anpassen.

Gruss Penny
Mitglied: Mitchell
Mitchell 19.01.2019 um 01:36:10 Uhr
Goto Top
Mal wieder WE, wie?

1. @137846: Deinen letzten Kommentar hättest du dir schenken können.

2. @Burningx2: Mitlesen wäre nicht schlecht, hier gibt es Hilfe zur Selbsthilfe. Die Antworten waren alle mehr als korrekt und wenn du dich stur stellst, dann ist es dein Bier. Ein wenig Eigeninitiative erwarten wir schon. Penny.Cilin sollte deine (eventuell vorherige) Lösung haben. Die davor funktionieren mit kompletten Userrechten aber auch.

Kindergarten nu bitte einstellen, danke.

Mfg
Mitchell
Mitglied: 137846
137846 19.01.2019 aktualisiert um 08:18:06 Uhr
Goto Top
Klasse, da stand zwar eine mögliche Batch-Lösung drin aber bitte ...darauf wird in diesem Forum ja von den Mods anscheinend keinen Wert gelegt.
Mitglied: Dani
Dani 19.01.2019 aktualisiert um 12:38:58 Uhr
Goto Top
Moin @137846,
Klasse, da stand zwar eine mögliche Batch-Lösung drin aber bitte ...
Ich weiß leider nicht, was im Detail in deinem Kommentar gestanden ist. Grundsätzlich ist das die Entscheidung von Mitchell.

darauf wird in diesem Forum ja von den Mods anscheinend keinen Wert gelegt.
Es wird Wert auf die Einhaltung der Netiquette gelegt! Das ist die Basis für das gute Miteinander auf dieser Plattform. Ob dadurch die mögliche Lösung verloren gegangen ist, steht auf einem anderen Blatt.

Vorausgegangen ist eine Verstoßmeldung und ich habe parallel auf anderen Wege ebenfalls einen Hinweis erhalten. Wenn sich zwei Moderatoren (unabhängig voneinander) in einem Beitrag tummeln ist oftmals was dran.


Gruß,
Dani
Mitglied: Penny.Cilin
Penny.Cilin 19.01.2019 um 12:52:41 Uhr
Goto Top
Nun, es wurden mehrere Lösungsmöglichkeiten angeboten.
  • Powershell: Wo der Fragesteller nicht zurechtkam, auch in Verbindung mit einem Tippfelher, welcher später behoben wurde
  • Link zu einem Administratorbeitrag, wo eine Batchlösung angeboten wurde
  • Ein Einzeiler, welcher gepostet wurde

Es ist egal, wer welche Antwort- / Lösungmöglichkeit gepostet hat.
Fakt ist, ...
  • eine Antwort war unangemessen.
  • der Fragesteller liest die Antworten nicht
  • der Fragesteller kopiert Fehler aus einer Lösung und LEIDER hat der Fragesteller dann nicht mal nach der Korrektur der Powershell Lösung es erneut versucht
  • Man versteift sich auf genau DIE Lösung
  • ein recht aktive Mitglied, welches in seiner Zeit hier im Forum stellenweise super Antworten gegeben hat ist verärgert und hat das Forum verlassen
Ich finde das traurig, aber dieses Thema ist schon ZU oft diskutiert worden und wird auch weiterhin kontrovers bleiben.

Gruss Penny
Mitglied: Mitchell
Mitchell 19.01.2019 um 23:45:43 Uhr
Goto Top
Ich weiß leider nicht, was im Detail in deinem Kommentar gestanden ist. Grundsätzlich ist das die Entscheidung von Mitchell.

Mach dir keinen Kopf, ich lösche keine Lösungen face-smile. Er hat einen Kommentar zitiert, der weiter oben steht...ging also nix verloren.

Mfg
Mitchell
Mitglied: Penny.Cilin
Penny.Cilin 20.01.2019 um 10:10:17 Uhr
Goto Top
@Burningx2
Wenn Deine Frage als gelöst gilt, bitte Wie kann ich einen Beitrag auf "gelöst" oder "erledigt" setzen?

@Mitchell
Ist halt nur traurig, daß sich er Fragesteller nicht mehr meldet und seine Frage als gelöst markiert.

Gruss Penny
Mitglied: Mitchell
Mitchell 22.01.2019 um 22:26:09 Uhr
Goto Top
abwarten

Mfg
Mitchell