Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

188
Vistas
Cómo extraer solo cierto texto de un archivo

así que tengo un archivo llamado "versions.properties", que se parece a esto:

 #ccsmp build version information #Tue, 12 Apr 2022 15:32:37 -0400 branch.type=feature cscsmp.svn.branch=branches/features/javarto_maven ivy.cache.dir.name=${svn.branch} jrto.version=${jrto.version.major}.${jrto.version.minor}.${jrto.version.maintenance} jrto.version.build=26856 jrto.version.maintenance=0 jrto.version.major=0 jrto.version.minor=0 lib.version=1.5 openvms_pass=xyz openvms_server=xyz openvms_user=loadxyz svn.branch=branches/features/CRE-442 svn.branchurl=${svn.rooturl}/${svn.branch} svn.password=xyz svn.rooturl=svn\://xyz-repo/svn/ccsmp svn.tagurl=${svn.rooturl}/tags svn.username=xyz version.build=846 version.date=2022/04/12 15\:32 version.maintenance=0 version.major=1 version.minor=37 version.release=${version.major}.${version.minor}.${version.maintenance}.${version.build}

Estoy tratando de leer este archivo y luego usando los valores de version.major, version.minor, version.maintenance, version.build

Quiero alimentar estos valores para seguir-

def SVN_TAG=ccsmp_v_${versión.principal}.${versión.menor}.${versión.mantenimiento}.${versión.compilación}

Así que cuando hago println ${SVN_TAG}

Sale -

 SVN_TAG=ccsmp_v_1.37.0.846

¿Hay alguna manera de hacer esto? Cualquier sugerencia es altamente apreciada

about 4 years ago · Santiago Gelvez
1 Respuestas
Responde la pregunta

0

def p = readProperties file: 'versions.properties' def SVN_TAG="ccsmp_v_${p.version.major}.${p.version.minor}.${p.version.maintenance}.${p.version.build}"

https://www.jenkins.io/doc/pipeline/steps/pipeline-utility-steps/#readproperties-read-properties-from-files-in-the-workspace-or-text

Si no tiene propiedades de lectura

 //declare function with non cps @NonCPS def toProperties(String s){ p = new Properties() p.load( new StringReader(s) ) return p } def p = readFile 'versions.properties' p = toProperties(p) def SVN_TAG="ccsmp_v_${p.'version.major'}.${p.'version.minor'}..."

u otra opción con el análisis de cada línea

 @NonCPS def toProperties(String s){ s.readLines().collect{it.split('=')}.findAll{it.size()==2}.collectEntries() } //the rest is the same as above
about 4 years ago · Santiago Gelvez Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda