Kod: Markera allt
#!/bin/bash
#
NEWUSERS="/home/anv.txt"
cat ${NEWUSERS} | \
while read FULLNAME USER GROUPS PASS ; do
useradd -c ${FULLNAME} -g 1001 -G ${GROUPS} -m -d /home/users/${USER} -p ${PASS} ${USER}
smbpasswd -a ${USER} -p ${PASS}
chmod 700 /home/users/${USER}
done
Problem:
1) Användarens fulla namn innehåller ju ett blanksteg som ställer till problem. Jag har försökt med alla varianter jag kan komma på, men inget fungerar. Jag trodde att fnuttar eller citattecken runt 'Förnamn Efternamn' skulle fungera.
2) Vid "smbpasswd" krävs ju att man matar in ett lösenord två gånger. Hur slipper jag inmatningen för att i stället ta lösenordet från textfilen med $PASS? Har testat ett par varianter utan framgång.
3) Textfilen med uppgifterna kommer från export ur en Excelfil i Windows. Hur löser jag problemet med radbrytningstecknen som är olika?
Något annat jag borde tänka på? Tex nån idé om hur man skulle kunna fånga upp fel, tex när användarnamnen redan är upptagna, utan att loopen avslutas?