Ersetzen / Umbenennen des Verzeichnisnamens mit Regex


0

Ich habe mehrere Ordner mit diesem Muster "720p.MP4-ABC [abcde]", die versuchen, "720p.MP4-CAB [aedcb]" in "." zu ersetzen.


Was möchten Sie in diesem speziellen Fall als Ergebnis sehen?
theoden

Sagen wir "beispiel.720p.MP4-ABC [abcde]" ist der Dateiname, der in "beispiel" umbenannt werden soll.
Steven Adward

Welches Betriebssystem / Shell?
David Richerby

Ich versuche es unter Linux
Steven Adward

Antworten:


0
echo mv \""NAME"\" \""$(sed -Ee 'regex' <<< "NAME")"\"

Dies wird mit regex umbenannt.

In Ihrem Fall können Sie einfach tun:

mv "example.720p.MP4-ABC[abcde]" "`sed 's/example\..*//' <<< "example.720p.MP4-ABC[abcde]"`"

"ABC [abcde]" kann sich jedoch in etwas anderes ändern
Steven Adward

@StevenAdward, ich versuche zu verstehen, was du brauchst, aber es ist manchmal wie der Nebel des Geheimnisses. Könnten Sie sich anhand konkreter Beispiele so klar wie möglich ausdrücken? siehe meine Bearbeitung
theoden

hier zwei beispiele Men.In.Black.3.2012.720p.MP4-KTR [rarbg] und Maleficent.2014.720p.MP4-KTR [rarbg] Ich möchte den Ordnernamen in Men.In.Black.3.2012 und Maleficent.2014 umbenennen
Steven Adward

for i in "Men.In.Black.3.2012.720p.MP4-KTR[rarbg]" "Maleficent.2014.720p.MP4-KTR[rarbg]"; do echo mv "'$i'" "'$(echo "$i" | sed -E 's/\.[0-9]{3,4}p.*//')"; done Ich denke, das wird für 720p und 1080p funktionieren.
theoden

root @ Ubuntu-1404-trusty-64-minimal ~ / 8.20 / 3 # bash 1.sh mv 'Men.In.Black.3.2012.720p.MP4-KTR [rarbg]' 'Men.In.Black.3.2012 mv' Maleficent.2014.720p.MP4-KTR [rarbg] '' Maleficent.2014 und ist es möglich, Platzhalter zum Suchen des Ordnernamens zu verwenden
Steven Adward
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.