<div dir="ltr">Kom ihåg att testa med någon med åä eller ö i namnet. Strängar som innehåller sånt blir base64-kodade om filen följer standarden.<br><br><div class="gmail_quote"><div dir="ltr">On Fri, May 25, 2018 at 9:30 AM Leif Larsson via BUS <<a href="mailto:bus@stacken.kth.se">bus@stacken.kth.se</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Man får verkligen inspiration och ideer, det är exakt såhär jag höll på<br>
att traggla men nådde inte riktigt fram.<br>
<br>
Känns som när man kikade i facit lite för tidigt i skolan.<br>
<br>
On 05/24/2018 10:14 PM, Anders Magnusson via BUS wrote:<br>
> Min personliga variant av det här (som jag använt en miljon gånger<br>
> ungefär) vore nog:<br>
> <br>
> /^givenName:/{gn=$2;}<br>
> /^mail:/{mail=$2;}<br>
> /^sn:/{sn=$2;}<br>
> /^uid:/{system("samba-tool user add " $2 " --surname=" sn "<br>
> --given-name=" gn " --mail-address=" mail);}<br>
> <br>
> -- Ragge<br>
> <br>
> Den 2018-05-24 kl. 18:10, skrev Daniel Lublin via BUS:<br>
>> OK, awk, om du säger det så! Det är ju förvisso trevligt för lite<br>
>> text-processande, och har väldigt få beroenden.<br>
>><br>
>> Här är en liten ansats, med föga felhantering, och som förutsätter att<br>
>> dataformatet du beskriver följs hårt. Särskilt att poster separeras<br>
>> med en<br>
>> eller flera tomma rader (RS=""). Man kan ju både tänka sig att man låter<br>
>> awk-scriptet spotta ur sig skal-kommandon till en fil (som sedan<br>
>> sourcas),<br>
>> alternativt kör man system() direkt i awk.<br>
>><br>
>> #!/usr/bin/awk -f<br>
>><br>
>> BEGIN { RS=""; FS="\n" }<br>
>><br>
>> function strip(s) {<br>
>>    sub(/^[[:space:]]+/, "", s)<br>
>>    sub(/[[:space:]]+$/, "", s)<br>
>>    return s<br>
>> }<br>
>><br>
>> {<br>
>>    delete rec<br>
>>    for (i = 1; i <= NF; i++) {<br>
>>      sep = index($i, ":")<br>
>>      if (sep) {<br>
>>        k = substr($i, 0, sep-1)<br>
>>        rec[k] = strip(substr($i, sep+1))<br>
>>      }<br>
>>    }<br>
>>    printf("samba-tool user add '%s' --surname='%s'" \<br>
>>           " --given-name='%s' --mail-address='%s'\n",<br>
>>           rec["uid"], rec["sn"], rec["givenName"], rec["mail"])<br>
>> }<br>
>> _________________________________________________<br>
>> BSD Users Sweden -- <a href="mailto:BUS@stacken.kth.se" target="_blank">BUS@stacken.kth.se</a><br>
>> <a href="https://lists.stacken.kth.se/mailman/listinfo/bus" rel="noreferrer" target="_blank">https://lists.stacken.kth.se/mailman/listinfo/bus</a><br>
> <br>
> _________________________________________________<br>
> BSD Users Sweden -- <a href="mailto:BUS@stacken.kth.se" target="_blank">BUS@stacken.kth.se</a><br>
> <a href="https://lists.stacken.kth.se/mailman/listinfo/bus" rel="noreferrer" target="_blank">https://lists.stacken.kth.se/mailman/listinfo/bus</a><br>
_________________________________________________<br>
BSD Users Sweden -- <a href="mailto:BUS@stacken.kth.se" target="_blank">BUS@stacken.kth.se</a><br>
<a href="https://lists.stacken.kth.se/mailman/listinfo/bus" rel="noreferrer" target="_blank">https://lists.stacken.kth.se/mailman/listinfo/bus</a></blockquote></div></div>