Bash One Liner: Kopiervorlage _ *. txt to foo _ *. txt?

9

Sagen Sie, ich habe drei Dateien (template _ *. txt):

  • template_x.txt
  • template_y.txt
  • template_z.txt

Ich möchte sie in drei neue Dateien kopieren (foo _ *. txt).

  • foo_x.txt
  • foo_y.txt
  • foo_z.txt

Gibt es einen einfachen Weg, dies mit einem Befehl zu tun, z.B.

cp --enableAwesomeness template_*.txt foo_*.txt

    
Patrick McElhaney 25.08.2008, 17:18
quelle

8 Antworten

11
%Vor%     
Chris Conway 25.08.2008, 17:26
quelle
3
%Vor%     
Matt McMinn 25.08.2008 17:25
quelle
3

Mein bevorzugter Weg:

%Vor%

Der "Ich-erinnere mich nicht an die Substitutionssyntax" -Weg:

%Vor%     
Roberto Bonvallet 18.09.2008 01:07
quelle
2

Das sollte funktionieren:

%Vor%     
Chris Bartow 25.08.2008 17:24
quelle
1
%Vor%

Wahrscheinlich bricht es, wenn Ihre Dateinamen funky Zeichen enthalten. Entferne das '-v' wenn (if) du dir sicher bist, dass es zuverlässig funktioniert.

    
pauldoo 25.08.2008 17:21
quelle
1

Der Befehl mmv (verfügbar in Debian oder Fink oder einfach selbst zu kompilieren) wurde genau für diese Aufgabe erstellt. Mit der einfachen Bash-Lösung muss ich immer die Dokumentation über die variable Erweiterung nachschlagen. Aber mmv ist viel einfacher zu benutzen, ziemlich nah an "awesomeness"! ; -)

Ihr Beispiel wäre:

%Vor%

mmv kann auch komplexere Muster behandeln und hat einige Plausibilitätsprüfungen, zum Beispiel wird sichergestellt, dass keine der Dateien in der Zielmenge in der Quellmenge erscheint (damit Sie nicht versehentlich Dateien überschreiben können) .

    
Bruno De Fraine 15.09.2008 15:32
quelle
1

Ich kenne nichts in bash oder auf cp, aber es gibt einfache Möglichkeiten, so etwas zu tun, indem man (zum Beispiel) ein Perl-Skript benutzt:

%Vor%

Dann:

%Vor%     
Blair Conrad 25.08.2008 17:21
quelle
0

Noch eine andere Möglichkeit:

%Vor%

Ich war schon immer beeindruckt von dem Programm von ImageMagick, das das leistet, was Sie von Bildformaten erwarten:

%Vor%

Es hat ein Schwesterprogramm, das Stapelkonvertierungen zulässt:

%Vor%

Offensichtlich sind diese auf Bildkonvertierungen beschränkt, aber sie haben interessante Befehlszeilenschnittstellen.

    
Jon Ericson 27.08.2008 23:49
quelle

Tags und Links