Ciao Piviul,

Il giorno mar, 12/03/2024 alle 10.18 +0100, Piviul ha scritto:
> Ciao a tutti, ho uno script che interroga (ldapsearch) alcuni campi di 
> un db ldap e aggiunge alcuni altri ammenicoli che poi importa in un 
> altro db sempre ldap.
[...]
>              -e "s/displayName:\ \(.*\)$/displayName: \1\nsn: \1\nou: 
> utenti\nobjectClass: top\nobjectClass: inetOrgPerson/"> $ldap_ns_path
[...]

Mi pare di capire che sed sostituisca solo le linee che contengono
"displayName:" seguito da uno spazio. Nel tuo caso "displayName:" non è
seguito da uno spazio, ma dal secondo ":", sicché sed non lo prende in
considerazione. Forse dovresti cambiare l'espressione con le regex estese,
così:

sed -E -e "s/displayName(:|::)\ (.*)$/displayName\1 \2/"

Ciao,
Giuseppe

Rispondere a