You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
50 lines
1.1 KiB
50 lines
1.1 KiB
#!/bin/bash
|
|
|
|
base="dc=bookshelf,dc=itix,dc=fr"
|
|
|
|
echo "Extracting level 1..."
|
|
egrep '^[0-9]00 ' dewey.txt > dewey1.txt
|
|
echo "Extracting level 2..."
|
|
egrep '^[0-9][0-9]0 ' dewey.txt > dewey2.txt
|
|
echo "Extracting level 3..."
|
|
egrep '^[0-9][0-9][1-9] ' dewey.txt > dewey3.txt
|
|
|
|
n=$(wc -l < dewey.txt)
|
|
n1=$(wc -l < dewey1.txt)
|
|
n2=$(wc -l < dewey2.txt)
|
|
n3=$(wc -l < dewey3.txt)
|
|
|
|
sum=$(($n1 + $n2 + $n3))
|
|
|
|
echo "original: $n"
|
|
echo "dewey1/2/3: $n1/$n2/$n3"
|
|
echo "sum: $sum"
|
|
|
|
echo "Generating LDAP, level 1..."
|
|
|
|
sed -r "s/([0-9][0-9][0-9]) (.*)/dn: frItixCategoryId=\\1,$base\\
|
|
frItixCategoryId: \\1\\
|
|
frItixCategoryName: \\2\\
|
|
objectClass: frItixCategory\\
|
|
/" dewey1.txt > dewey1.ldif
|
|
|
|
|
|
|
|
echo "Generating LDAP, level 2..."
|
|
|
|
sed -r "s/(([0-9])[0-9][0-9]) (.*)/dn: frItixCategoryId=\\1,frItixCategoryId=\\200,$base\\
|
|
frItixCategoryId: \\1\\
|
|
frItixCategoryName: \\3\\
|
|
objectClass: frItixCategory\\
|
|
/" dewey2.txt > dewey2.ldif
|
|
|
|
|
|
|
|
echo "Generating LDAP, level 3..."
|
|
|
|
sed -r "s/((([0-9])[0-9])[0-9]) (.*)/dn: frItixCategoryId=\\1,frItixCategoryId=\\20,frItixCategoryId=\\300,$base\\
|
|
frItixCategoryId: \\1\\
|
|
frItixCategoryName: \\4\\
|
|
objectClass: frItixCategory\\
|
|
/" dewey3.txt > dewey3.ldif
|
|
|
|
|