Thread Print beginnt wieder am Zeilenanfang?
(18 answers)
Opened by Reisser696 at 2008-04-25 16:42
Ok - dann mal das volle Script:
Übergabe: Scriptname [Username] Code (perl): (dl
)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 #!/usr/bin/perl -w print "\nSet Default User 0.1\n\n"; #Variablendeklaration $configfile = "default_groups.cfg"; $par1 = ($ARGV[0]); #Parameterverarbeitung if ($par1 eq ""){$par1 = "0";} if (($par1 eq "0") || ($par1 eq "-h") || ($par1 eq "/h")) { print 'Format: "vbdefaultgroups <User>"'."\n"; print 'Userformat Beispiel: "YF12HXX"'."\n"; exit(0); } # Check ob User existiert $users = `getent group vb_sw_users`; # Gruppe aus LDAP auslesen if (index($users,$par1) == -1){ print "User existiert nicht\n"; exit (0);} # User in Gruppen einfügen open DEFAULT, $configfile; foreach $line ( <DEFAULT> ) { $group_count++; chomp($line); print "-u:$par1 -g:$line -add\n"; # ist nur ein Ausgabetest bevor ich das LDAP zuramsche } close DEFAULT; Das ganze soll mal dazu dienen User mit LDAP-Standardgruppen zu befüllen. Ich weiß - der Script ist ganz schön krude - aber naja, ist ein Anfang ;) Inhalt der Config-Datei: Und so schaut die Ausgabe aus: Code: (dl
)
1 Set Default User 0.1 Die Config-Datei (erste Zeile) mit einem Hexeditor betrachtet: 4E 6F 63 68 45 69 6E 54 65 73 74 0A Die gleiche Zeile in der Bash mit print unpack( "H*", $line ), $/; ausgegeben: VOR dem chomp: 4e6f636845696e546573740a NACH dem chomp: 4e6f636845696e546573740d Da liegt dann wohl der Hase im Pfeffer. Aber: muß ich das irgendwie verstehen? So schwierig ist chomp doch nun auch nicht einzusetzen ... *kopfkratz* Ok - ich habe nun erstmal ein chop statt einem chomp reingepackt - das Ergebnis ist dann ja ok - aber so richtig toll ist das ja auch nicht (vor allem muß man immer dran denken im letzten Config-Eintrag nochmal Return zu drücken) Signaturen werden völlig überbewertet
|