Ich habe eine Liste von *.new
Dateien in einem Verzeichnis. Diese Datei enthält D1
in ihrem Namen, die zu D2
ersetzt werden soll, und auch von .new zu nichts, um die Erweiterung zu entfernenMehrere Dateien umbenennen Ändern der Erweiterung und Teil der Zeichenfolge
hello_world_D1_122.txt.new -------> hello_world_D2_122.txt
Was habe ich versuchte, ist
ls -slt | grep -iE "*.new$" | awk -F " " '{print $10}' | xargs -I {} mv {} "echo {} | sed -e 's/.D1./.D2./g ; s/.new//g'"
Dieser Befehl wird nicht die Herstellung von erforderliche Ausgabe. Ausgabe des obigen Befehl ist
mv: rename hello_world_D1_122.txt.new to echo hello_world_D1_122.txt.new | sed -e 's/D1/D2/g ; s/.new//g': No such file or directory
Was ist zu tun? Geben Sie eine Beispielausgabe des Problems an. – Nic3500
Dieser Befehl soll alle Dateinamen in die gewünschten konvertieren. Bsp .: hallo_world_D1_122.txt.new -------> hallo_world_D2_122.txt –
Deh! OK. Ich meinte, was macht dein jetziges Kommando? – Nic3500