En Linux a veces renombre archivos como este:
mv dir1/dir2/dir3/file.txt dir1/dir2/dir3/file.txt.old
Tenga en cuenta que solo quiero cambiar el nombre del archivo, no moverlo a otro directorio.
¿Hay algún comando que me permita hacer una versión abreviada de ese comando? Estoy pensando algo como:
mv dir1/dir2/dir3/file.txt file.txt.old
o tal vez incluso algo como (solo agregar al nombre):
mv dir1/dir2/dir3/file.txt {}.old
Mi objetivo no es tener que volver a especificar la ruta completa.
Sé que esos "ejemplos" que escribí no funcionan, pero es solo una idea de lo que quiero lograr.
No quiero tener que cd en el directorio.
(cd dir1/dir2/dir3 && exec mv file.txt{,.old})
tiene efectivamente el mismo rendimiento que el código sin el subproceso, ya que se exec
evita fork()
durante la invocación del comando externo, por lo que tiene exactamente una bifurcación en ambos sentidos.