Bestimmten Dateisatz umbenennen (Linux)

Bestimmten Dateisatz umbenennen (Linux)

Ich habe folgende Dateien:

boxScoreBaseball.html.php
boxScoreBasketball.html.php
boxScoreBowling.html.php
boxScoreCheer.html.php
boxScoreCrew.html.php
boxScoreCrossCountry.html.php
boxScoreEquestrian.html.php
boxScoreFieldHockey.html.php
boxScoreFootball.html.php
boxScoreGolf.html.php
boxScoreGymnastics.html.php
boxScoreHockey.html.php
boxScoreLacrosse.html.php
boxScoreRugby.html.php
boxScoreSkiing.html.php
boxScoreSoccer.html.php
boxScoreSoftball.html.php
boxScoreSwimming.html.php
boxScoreTennis.html.php
boxScoreTrack.html.php
boxScoreVolleyball.html.php
boxScoreWaterPolo.html.php
boxScoreWrestling.html.php

Ich möchte den boxScoreTeil von jeder Datei entfernen, sodass beispielsweise boxScoreBaseball.html.phpFolgendes würde baseball.html.php: Was ist der einfachste Weg, dies zu tun?

Antwort1

Funktioniert wahrscheinlich nur mit Bash:

for i in boxScore*; do mv $i ${i#boxScore}; done

Ich verwende diese Referenz immer für schnelle und einfache Bash-Sachen:http://aurelio.net/shell/canivete/en/(siehe Abschnitt 4).

Antwort2

Eine weitere Möglichkeit besteht darin mmv, (siehediesen Artikel für weitere Beispiele).

Für das gegebene Beispiel:

mmv "boxScore*.html.php" "#1.html.php"

Antwort3

Sie können nicht alles direkt umbenennen, Sie müssen ein Bash-Skript verwenden. Vielleicht sind diese Links für Sie nützlich:

Antwort4

Führen Sie dieses kleine Shell-Skript aus:

for file in *; do echo "${file:8}" | sed -e 's/^\([A-Z]\)\(.*\)/\l\1\2/' | xargs mv "$file"; done

Wir durchlaufen jede Datei im aktuellen Verzeichnis. Zuerst geben wir den Dateinamen ohne die ersten 8 Zeichen aus. Dann verwenden wir , sedum das erste Zeichen in Kleinbuchstaben umzuwandeln. Der sedSuchausdruck bedeutet „Zeilenanfang, Gruppe 1: ein Großbuchstabe, Gruppe 2: der Rest“, und der Ersetzungsausdruck bedeutet „Kleinbuchstaben passend zu Gruppe 1, und dann Gruppe 2 anhängen“. Der letzte Teil verschiebt einfach die alte Datei in den umgewandelten Dateinamen.

verwandte Informationen