2010-07-24 10 views
6

funktioniert Ich möchte ein Samba Passwort automatisiert das Erstellen, aber dieser Befehl nicht funktioniert:Echo von --stdin smbpasswd nicht

echo "passwd"|smbpasswd -a -s $user 

Es zeigt diesen Fehler:

Mismatch - password unchanged. Unable to get new password.

Could Bitte schlagen Sie irgendeine Option vor, um mein Skript zu automatisieren?

Antwort

12

Sie müssen wiederholen das Passwort, "zur Bestätigung" sozusagen, so z.

printf "passwd\npasswd\n" | smbpasswd -a -s $user 

sollte funktionieren.

+0

stimme mit Ihrem Punkt, aber könnten Sie bitte kurz sagen, was eine Funktion von printf bei – sunil

+0

'printf' ist ein Shell-Befehl in IEEE Std 1003.2-1992 (' 'POSIX.2 '') angegeben, die leistungsfähiger als' ist echo, weil es Ihnen leicht erlaubt, Formatierungsoptionen anzugeben - 'man 1 printf' (nicht zu verwechseln mit' man 3 printf', das die ähnliche Funktion in der C-Standardbibliothek dokumentiert) wird Ihnen alle Details geben. –