Dado un directorio, obtenga rutas relativas de todos los archivos de forma recursiva


0

Estoy creando un archivo de especificaciones RPM y necesito enumerar en la %filessección los archivos a incluir, en relación con una raíz de compilación que especificaré. Ya tengo el directorio ensamblado que necesita ser empaquetado, solo necesito convertir esto en una lista de rutas relativas a todos los archivos contenidos en él.

Para hacer esto, estoy usando actualmente find, pero está devolviendo rutas absolutas.

find $1/codebase -type f ! -name ".*" >> ${BUILD_RPM_DST_DIR}/rpm.spec

Soy un poco unix n00b, así que me disculpo.

¿Debo conectarlo a sed o grep y eliminar la parte inicial del camino? Una muestra de cómo hacerlo sería útil.

Respuestas:


1

Find le dará rutas relativas, si le pasa una especificación relativa cuando la ejecuta. Estás pasando, lo $1/codebaseque creo que es un camino absoluto. En lugar de usar ese comando, intente algo como cd $1/codebase ; find . -type ...eso.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.