Macierzowa struktura danych w bashu (plik konfiguracyjny)?
Napisałem skrypt basha, który przetwarza wiele plików. Chcę teraz dodać obsługę pliku konfiguracyjnego. To jest moja pożądana struktura danych:
Array (
[0] => Array (
[name] => datset1
[path] => /var/lib/bliTool/ds1
[type] => cvs
)
[1] => Array (
[name] => datset2
[path] => /var/lib/bliTool/ds2
[type] => xml
)
[2] => Array (
[name] => datset3
[path] => /home/igor/test/ds3
[type] => cvs
)
)
Q1 Czy taka struktura danych jest możliwa w bashu? Czy są inne zalecenia? Pamiętaj, że powinno to być w pliku konfiguracyjnym ...
P2: Myślę o jednym pliku konfiguracyjnym na „zestaw”
/etc/myApp/
/etc/myApp/myApp.conf
/etc/myApp/datasets.d/
/etc/myApp/datasets.d/ds1.conf
/etc/myApp/datasets.d/ds2.conf
/etc/myApp/datasets.d/dsN.conf
i każdy/etc/myApp/datasets.d/dsN.conf plik będzie wyglądał
name=The DS name
path=/the/path/to/the/ds/files
type=thetype
Co polecasz? Czy można zrobić wszystko w jednym pliku?
P3: Chcę obsługiwać wiele wartości ścieżki na zestaw. Mogę wesprzeć coś takiego
path="/first/path /second/path"
Ale myślę, że będę miał kłopoty ze spacjami, więc powinienem wprowadzić taki ogranicznik
path="/first/path:/second/path"
podzielić łańcuch.
Czy jest jakiś lepszy sposób?