Re: Re: Shellscript, AWK, SED oder gar Perl?

2006-06-15 Diskussionsfäden Thomas Halinka

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?

2006-05-26 Diskussionsfäden Thomas Halinka

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?

2006-05-25 Diskussionsfäden Bertram Scharpf
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?

2006-05-23 Diskussionsfäden Thomas Halinka

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)