Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

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

Mit Powershell Wörter aus einem Textdokument filtern

Frage Entwicklung Batch & Shell

Mitglied: ichKoeln

ichKoeln (Level 1) - Jetzt verbinden

06.10.2011 um 18:06 Uhr, 4288 Aufrufe, 2 Kommentare

Hallo,
Ich habe dieses Forum gerade dank Google gefunden und hoffe, dass ihr mir bei einem großen Problem helfen könnt.
Folgendes: Ich habe ein Textdokument mit englischen Wörter samt deutscher Übersetzung. Der Inhalt sieht so aus:

fire:feuer
bridge:brücke
you:du
answer:antwort
letter:brief

Also immer "englisch Doppelpunkt deutsch". Das Textdokument ist sehr groß; alle englischen Wörter stehen (hoffentlich) drin.

Ich will jetzt folgendes machen: Alle englischen Wörter, die 10 Zeichen lang sind, sollen in dem Textdokument "10zeichen.txt" gespeichert werden.
Die Länge der deutschen Wörter ist egal. Es geht nur um die Länge der englischen Wörter.

Der Befehl "Sort-Object Length" bringt mir deshalb nichts. Dann wird bei der Länge auch der deutsche Teil mit einbezogen.

Jetzt meine Frage: Wie kann ich alle englischen Wörter, welche 10 Zeichen lang sind, samt deutscher Übersetzung in ein anderes Textdokument
verschieben?

Das neue Textdokumt sähe dann so aus:
ballplayer:ballspieler
discarding:verwerfen
astronauts:astronauten
navigators:navigatoren

Das ganze will ich natürlich nicht nur mit 10 Zeichen machen, aber das schaffe ich dann selber. Am Ende habe ich dann alle englischen Wörter nach Länge sortiert.
Also ein Textdokument mit allen englischen Wörtern aus zwei Buchstaben, eins mit allen die drei Buchstaben haben usw. usw.

Wenn möglich würde ich das gerne mit Powershell machen. Ich nutze Windows7 64bit.
Mitglied: Friemler
06.10.2011 um 21:36 Uhr
Hallo ichKoeln,

teste mal das hier:
01.
$InFile       = "words.txt" 
02.
$OutFileName  = "words" 
03.
$OutFileExt   = "txt" 
04.
 
05.
$Content = Get-Content $InFile 
06.
 
07.
$Content | ForEach-Object { 
08.
  $IColon = $_.IndexOf(':') 
09.
  $_ | Add-Content $($OutFileName + $IColon + "." + $OutFileExt) 
10.
}
Der Name der Eingabedatei kommt in InFile. OutFileName stellt den ersten Teil des Namens der Ausgabedateien dar (wird beim Scriptlauf um die Länge der in der jeweiligen Datei gespeicherten englischen Wörter ergänzt) und OutFileExt ist die Dateierweiterung der Ausgabedateien.

Gruß
Friemler
Bitte warten ..
Mitglied: ichKoeln
06.10.2011 um 23:58 Uhr
Perfekt! Funktioniert super.

Nach meiner Bekanntschaft mit "Set-ExecutionPolicy : Microsoft.PowerShell" wurde verweigert." hab ich jetzt alles genau so wie es sein soll.

Vielen Dank!
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
gelöst Powershell Get-Content Inhalt filtern (1)

Frage von derhoeppi zum Thema Batch & Shell ...

Batch & Shell
gelöst Powershell Skript Ordnerinhalt auflisten und per E-Mail verschicken (2)

Frage von xbast1x zum Thema Batch & Shell ...

Administrator.de Feedback
Neuer Bereich Powershell und erweitertes syntax highlighting (4)

Frage von Kraemer zum Thema Administrator.de Feedback ...

Batch & Shell
gelöst Auslesen und Vergleichen Zweiter CSV Dateien Powershell (7)

Frage von Hainoon zum Thema Batch & Shell ...

Neue Wissensbeiträge
Peripheriegeräte

Was beachten bei der Wahl einer USV Anlage im Serverschrank

(2)

Tipp von zetboxit zum Thema Peripheriegeräte ...

Windows 10

Das Windows 10 Creators Update ist auf dem Weg

(5)

Anleitung von BassFishFox zum Thema Windows 10 ...

Administrator.de Feedback

Tipp: Ungelöste Fragen ohne Antwort in Tickeransicht farblich hinterlegen

Tipp von pattern zum Thema Administrator.de Feedback ...

Viren und Trojaner

Neue Magazin Ausgabe: Malware und Angriffe abwehren

Information von Frank zum Thema Viren und Trojaner ...

Heiß diskutierte Inhalte
Windows Systemdateien
Warum System auf "C:" (29)

Frage von DzumoPRO zum Thema Windows Systemdateien ...

LAN, WAN, Wireless
Cisco SG200: Auf bestimmtem vLAN bestimmte TCP-Ports sperren (16)

Frage von SarekHL zum Thema LAN, WAN, Wireless ...

Windows Server
gelöst Update BackupExec 2015 auf 2016 führt zu SQL-Server Problem (16)

Frage von montylein1981 zum Thema Windows Server ...

Cloud-Dienste
gelöst Bitcoins minen über Nacht? (16)

Frage von 1410640014 zum Thema Cloud-Dienste ...