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