Unter Linux benenne ich manchmal Dateien wie folgt um:
mv dir1/dir2/dir3/file.txt dir1/dir2/dir3/file.txt.old
Beachten Sie, dass ich die Datei nur umbenennen und nicht in ein anderes Verzeichnis verschieben möchte.
Gibt es einen Befehl, mit dem ich eine Kurzversion dieses Befehls ausführen kann? Ich denke etwas wie:
mv dir1/dir2/dir3/file.txt file.txt.old
oder vielleicht sogar so etwas wie (einfach an den Namen anhängen):
mv dir1/dir2/dir3/file.txt {}.old
Mein Ziel ist es, nicht noch einmal den vollständigen Pfad angeben zu müssen.
Ich weiß, dass diese "Beispiele", die ich geschrieben habe, nicht funktionieren, aber es ist nur eine Idee von dem, was ich erreichen möchte.
Ich möchte nicht in das Verzeichnis hineingehen müssen.
(cd dir1/dir2/dir3 && exec mv file.txt{,.old})
effektiv die gleiche Leistung wie der Code ohne den Unterprozess hat, da dies während des externen Befehlsaufrufs exec
vermieden wird fork()
, sodass Sie genau eine Verzweigung in beide Richtungen haben.