Eliminar una extensión de archivo al copiar

Eliminar una extensión de archivo al copiar

Tengo una pregunta que es súper simple, pero no puedo entenderla. Respecto a la siguiente línea de comando:

for foo in *.dist; do cp $foo `basename $foo .dist`; done

Sé que toma todos los archivos en el directorio actual que tienen .dist como extensión, los copia y en el mismo paso elimina la extensión .dist (lo tomé de una publicación wiki sobre la instalación de OTRS en Ubuntu Server). Sólo quiero entender POR QUÉ está haciendo esto.

Muchas gracias.

Respuesta1

deman basename

NOMBRE nombre base: elimina el directorio y el sufijo de los nombres de archivos

SINOPSIS nombre base NOMBRE [SUFIJO] nombre base OPCIÓN

DESCRIPCIÓN Imprima NOMBRE con todos los componentes principales del directorio eliminados. Si se especifica, elimine también el SUFIJO final.

entonces, el comando basename está haciendo esto

información relacionada