Re: Re: Shellscript, AWK, SED oder gar Perl?
Hallo Bertram, ich habe da leider einProblem mit deinem netten Ruby-Script Mit Ruby ist das ein Kinderspiel. Ich schreibe mal auf die Schnelle: $.each { |line| if line =~ /^D:\\Daten\\(\w+)/ then ordner = $1 elsif line =~ /^\s+(.*)\\(.*):/ then dom, abt = $1, $2 puts -ENDHTTP Directory /var/www/Archiv/#{ordner} Options Indexes Multiviews require group CN=#{abt},OU=Betrieb,OU=OrgEin,DC=#{dom},DC=de /Directory ENDHTTP end } Da die Windows-Datei reinleiten. Sieht schlimmer aus als es ist; es geht sicher auch eleganter. (Vielleicht mit der Option -00?) So mal zur Erinnerung Das tut leider nicht bei mir: /home/thohal# cat d | sh ruby.sh ruby.sh: line 2: syntax error near unexpected token `(' ruby.sh: line 2: ` if line =~ /^D:\\Daten\\(\w+)/ then' sh ruby.sh d ruby.sh: line 2: syntax error near unexpected token `(' ruby.sh: line 2: ` if line =~ /^D:\\Daten\\(\w+)/ then' d ist die texfile Irgendwelche Ideen? Grüßle, Thomas ___ Gesendet von Yahoo! Mail - Jetzt mit 1GB Speicher kostenlos - Hier anmelden: http://mail.yahoo.de -- Haeufig gestellte Fragen und Antworten (FAQ): http://www.de.debian.org/debian-user-german-FAQ/ Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED] mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)
Re: Shellscript, AWK, SED oder gar Perl?
Bertram Scharpf schrieb: Hallo, Am Dienstag, 23. Mai 2006, 18:00:50 +0200 schrieb Thomas Halinka: Das -Windows/ACL-Textfile sieht in etwa so aus: D:\Daten\Ordner VORDEFINIERT\Administratoren:(OI)(CI)F Domäne\Abt1:(OI)F Domäne\Abt2:(OI)F Domäne\Abt3:(CI)R Domäne\Abt4:(OI)(CI)R NT-AUTORITŽT\SYSTEM:(OI)(CI)F D:\Daten\Ordner2 VORDEFINIERT\Administratoren:(OI)(CI)F Domäne\Abt2:(OI)F NT-AUTORITŽT\SYSTEM:(OI)(CI)F Jedoch erwartet der Apache ja das ganze in so einer Form: Directory /var/www/Archiv/Ordner1 Options Indexes FollowSymLinks MultiViews AllowOverride None #Order allow,deny #allow from all require group CN=Abt1,OU=Betrieb,OU=OrgEin,DC=Domäne,DC=de # Uncomment this directive is you want to see apache2's # default start page (in /apache2-default) when you go to / #RedirectMatch ^/$ /apache2-default/ /Directory Mit Ruby ist das ein Kinderspiel. Ich schreibe mal auf die Schnelle: $.each { |line| if line =~ /^D:\\Daten\\(\w+)/ then ordner = $1 elsif line =~ /^\s+(.*)\\(.*):/ then dom, abt = $1, $2 puts -ENDHTTP Directory /var/www/Archiv/#{ordner} Options Indexes Multiviews require group CN=#{abt},OU=Betrieb,OU=OrgEin,DC=#{dom},DC=de /Directory ENDHTTP end } Da die Windows-Datei reinleiten. Sieht schlimmer aus als es ist; es geht sicher auch eleganter. (Vielleicht mit der Option -00?) Bertram Hallo Bertram uii dankeschön,aber ich hab da leider noch ein weiteres Problem nochmal kurz Zum Verständnis - - Als Ordner bräuchte ich alles was nach D:\Daten\ (auch entsprechende Unterverzeichnisse) --- Dies soll in der Apache-Konfig nach Archiv/ eingetragen werden ! beides markiert D:\Daten\_Ordner1_ VORDEFINIERT\Administratoren:(OI)(CI)F Domäne\Abt2:(OI)F NT-AUTORITŽT\SYSTEM:(OI)(CI)F Directory /var/www/Archiv/_Ordner1_ Options Indexes FollowSymLinks MultiViews AllowOverride None #Order allow,deny #allow from all require group CN=Abt1,OU=Betrieb,OU=OrgEin,DC=Domäne,DC=de # Uncomment this directive is you want to see apache2's # default start page (in /apache2-default) when you go to / #RedirectMatch ^/$ /apache2-default/ /Directory - Als Gruppe brauche ich alles zwischen Backslash und Doppelpunkt , jedoch nur bei Fällen,in denen vorne dran Vordefiniert oder Domäne steht alles andere soll rausfliegen (Im unteren Beispiel würde somit nur Administratoren und Abt1, Abt2, stehen bleiben. NT-Authorität fliegt raus! D:\Daten\Ordner VORDEFINIERT\_Administratoren_:(OI)(CI)F Domäne\_Abt1_:(OI)F Domäne\_Abt2_:(OI)F Domäne\_Abt3_:(CI)R Domäne\_Abt4_:(OI)(CI)R NT-AUTORITŽT\SYSTEM:(OI)(CI)F und sollte dann hier eingetragen werden:. Directory /var/www/Archiv/Ordner1 Options Indexes FollowSymLinks MultiViews AllowOverride None #Order allow,deny #allow from all require group CN=_Abt1_,OU=Betrieb,OU=OrgEin,DC=Domäne,DC=de # Uncomment this directive is you want to see apache2's # default start page (in /apache2-default) when you go to / #RedirectMatch ^/$ /apache2-default/ /Directory -- Probleme dabei sind: - schlechte Formatierung der windows-txt-file (nicht einheitlich getrennt zB durch Tabstopps,. sondern einzelne Spaces teilweise tabs etc -Ausgabe-File WIN im Anhang - Problem bei den gelieferten Daten des windows-txt-files: Dadurch das die Vererbung unter Windows aktiviert ist habe ich etwa 65000 Einträge, bei denen sich jedoch nicht immer die Berechtigungen/Gruppen (zB im Beispiel oben Administratoren, Abt1,) ändern - quasi gibts es diese Einträge teilweise mehrfach --- Bräuchte quasi noch eine Regel, die guggt ob in einem Unterverzeichnis andere Gruppen sind und diese dann in die Apache-Conf einträgt, ansonsten wird sie überspringen --- Zeige das unten: UNd zwar war ich in der Zeit ja nicht ganz untätig und hab mir versucht zu behelfen - 3xSED+2xAWK+tr hat mich schon mal soweit gebracht: -- Hab das Zeugs jetzt schon mal schön in einer Zeile :-) Abt1 Administratoren Abt1Group XXX Administratoren AKUT FS_XXX FS_MARME X X Administratoren FS_X XXX Administratoren FS_XXX FS_ XX Administratoren FS_XX Administratoren Benutzer Profile-Test Benutzer Administratoren Benutzer PROG Administratoren Benutzer Programme Administratoren Benutzer Administratoren FS_ SCHREIB Administratoren SCHREIB USERS Administratoren Dom„nen-Benutzer XX Administratoren FS_VERWALT XX Administratoren FS_VORSTAND Abt1\1.FG.WPWin Administratoren webi Abt1Group Abt1\DB-ST Administratoren wihe Abt1Group Abt1\Excel Administratoren webi Abt1Group Abt1\Sicherung Administratoren wihe Abt1Group Abt1\simpl.y.w Administratoren wihe Abt1Group Abt1\tempo
Re: Shellscript, AWK, SED oder gar Perl?
Hallo, Am Dienstag, 23. Mai 2006, 18:00:50 +0200 schrieb Thomas Halinka: Das -Windows/ACL-Textfile sieht in etwa so aus: D:\Daten\Ordner VORDEFINIERT\Administratoren:(OI)(CI)F Domäne\Abt1:(OI)F Domäne\Abt2:(OI)F Domäne\Abt3:(CI)R Domäne\Abt4:(OI)(CI)R NT-AUTORITŽT\SYSTEM:(OI)(CI)F D:\Daten\Ordner2 VORDEFINIERT\Administratoren:(OI)(CI)F Domäne\Abt2:(OI)F NT-AUTORITŽT\SYSTEM:(OI)(CI)F Jedoch erwartet der Apache ja das ganze in so einer Form: Directory /var/www/Archiv/Ordner1 Options Indexes FollowSymLinks MultiViews AllowOverride None #Order allow,deny #allow from all require group CN=Abt1,OU=Betrieb,OU=OrgEin,DC=Domäne,DC=de # Uncomment this directive is you want to see apache2's # default start page (in /apache2-default) when you go to / #RedirectMatch ^/$ /apache2-default/ /Directory Mit Ruby ist das ein Kinderspiel. Ich schreibe mal auf die Schnelle: $.each { |line| if line =~ /^D:\\Daten\\(\w+)/ then ordner = $1 elsif line =~ /^\s+(.*)\\(.*):/ then dom, abt = $1, $2 puts -ENDHTTP Directory /var/www/Archiv/#{ordner} Options Indexes Multiviews require group CN=#{abt},OU=Betrieb,OU=OrgEin,DC=#{dom},DC=de /Directory ENDHTTP end } Da die Windows-Datei reinleiten. Sieht schlimmer aus als es ist; es geht sicher auch eleganter. (Vielleicht mit der Option -00?) Bertram -- Bertram Scharpf Stuttgart, Deutschland/Germany http://www.bertram-scharpf.de -- Haeufig gestellte Fragen und Antworten (FAQ): http://www.de.debian.org/debian-user-german-FAQ/ Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED] mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)
Shellscript, AWK, SED oder gar Perl?
Hallo zusammen, ich habe folgendes Problem: Ich möchte Daten per Apache zugänglich machen. Diese Daten liegen auf einem Windows-Fileserver mit entsprechenden NTFS-Berechtigungen, welche vom Apache übernommen werden sollten bzw dass der Apache den Zugriff auf Daten samt Unterordnern regelt - geht ja global über die sites-enabled/default. Da es meines Wissens nichts gibt, dass Apache irgendwie diese NTFS-Berechtigungen lesen könnte (lasse mich gerne eines besseren belehren), habe ich mir folgendes überlegt: Mittels (x)cacls eine Datei schreiben, indem alle Ordner samt ACLs zu finden sind und diese dann in Apache-Form zu bringen Das -Windows/ACL-Textfile sieht in etwa so aus: D:\Daten\Ordner VORDEFINIERT\Administratoren:(OI)(CI)F Domäne\Abt1:(OI)F Domäne\Abt2:(OI)F Domäne\Abt3:(CI)R Domäne\Abt4:(OI)(CI)R NT-AUTORITŽT\SYSTEM:(OI)(CI)F D:\Daten\Ordner2 VORDEFINIERT\Administratoren:(OI)(CI)F Domäne\Abt2:(OI)F NT-AUTORITŽT\SYSTEM:(OI)(CI)F ...etc -- Ausgabe von cacls bzw xcacls Jedoch erwartet der Apache ja das ganze in so einer Form: Directory /var/www/Archiv/Ordner1 Options Indexes FollowSymLinks MultiViews AllowOverride None #Order allow,deny #allow from all require group CN=Abt1,OU=Betrieb,OU=OrgEin,DC=Domäne,DC=de # Uncomment this directive is you want to see apache2's # default start page (in /apache2-default) when you go to / #RedirectMatch ^/$ /apache2-default/ /Directory Directory /var/www/Archiv/Ordner2 Options Indexes FollowSymLinks MultiViews AllowOverride None #Order allow,deny #allow from all require group CN=Abt2,OU=Betrieb,OU=OrgEin,DC=Domäne,DC=de # Uncomment this directive is you want to see apache2's # default start page (in /apache2-default) when you go to / #RedirectMatch ^/$ /apache2-default/ /Directory Jetzt meine Frage: Wie kann ich das auf die entsprechende Form bringen? Reicht da ein einfach Shell-Script? Brauch ich dafür awk, sed oder gar perl? Das Script müsste ja nur in der Apache-default /directory /blablabla eintragen und unter require group die entsprechenden Gruppen - nur wie das auslesen aus der cacls-txt-file gehen soll ist mir schleierhaft? Hoff jemand versteht mich :-) Das Textfile ist leieder auch etwa 10 MB groß - von dem her wäre was perfomantes schon wünschenwert. Jemand Erfahrungen oder ne Idee? Vielen Dank schon mal im Vorraus Thomas Halinka ___ Gesendet von Yahoo! Mail - Jetzt mit 1GB Speicher kostenlos - Hier anmelden: http://mail.yahoo.de -- Haeufig gestellte Fragen und Antworten (FAQ): http://www.de.debian.org/debian-user-german-FAQ/ Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED] mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)