Linux-Shell-Skript zum Hinzufügen von führenden Nullen zu Dateinamen

Ich habe einen Ordner mit ca. 1.700 Dateien. Sie heißen alle wie1.txt oder1497.txt usw. Ich möchte alle Dateien umbenennen, sodass alle Dateinamen vierstellig sind.

Dh.,23.txt wird0023.txt.

Was ist ein Shell-Skript, das dies erledigt? Oder eine verwandte Frage: Wie verwende ich grep, um nur Zeilen abzugleichen, die @ enthalte\d.txt (d. h. eine Ziffer, dann ein Punkt, dann die Buchstabentxt)?

Hier ist was ich bisher habe:

for a in [command i need help with]
do
  mv $a 000$a
done

Grundsätzlich dreimal ausführen und dabei Befehle eingeben, um eine Ziffer, zwei Ziffern und drei Ziffern als Dateinamen zu suchen (wobei die Anzahl der anfänglichen Nullen geändert wurde).

Antworten auf die Frage(18)

Ihre Antwort auf die Frage