¿Cómo puedo convertir una cadena que contiene caracteres glob tales comoenglobamiento/expansión nombre de ruta con dos puntos como separador
/var/lib/gems/*/bin
en una cadena separada por dos puntos de nombres de archivo (es decir PATH compatible) acorde con el patrón?
decir echo /var/lib/gems/*/bin
volverá
/var/lib/gems/1.8/bin /var/lib/gems/1.9.1/bin
Quiero
/var/lib/gems/1.8/bin:/var/lib/gems/1.9.1/bin
lugar.
El enfoque obvio es simplemente reemplazar el carácter de espacio con ':' a través de tr
, pero eso no funciona si el nombre de archivo contiene el carácter de espacio.
¡Cerrar! Pero si solo hay una coincidencia, obtendrás dos puntos al final: "/var/lib/gems/1.9.1/bin:". (Y si no hay coincidencia, un solo punto). – mjs