Need help parsing config file in ksh


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Need help parsing config file in ksh
# 1  
Old 02-03-2010
Need help parsing config file in ksh

Hi all, I've done some searching here but haven't found exactly what I'm looking for so I thought I'd post up and see if someone can help out.

I'm working on a shell script that I would like to store environment variables in an external file. I'm familiar with sourcing a file with variables in it, but I was looking for the ability to just source a section of the config file depending on what part of the script is being run.

For example:

Code:
sample.conf:

[default]
INST_DIR="/root/scripts"

[os]
OS_TYPE="Linux"

OR

Code:
sample2.conf:

default {
INST_DIR="/root/scripts"
}

os {
OS_TYPE="Linux"
}

The config file doesn't need to follow these examples if you have a method that supports sections.

The plan is to be able to call the code that parses each section as a function:

In example:

Code:
readconfig "os"
echo ${OS_TYPE}

Then any and all environment variables in the "os" section are available to the script needing them.

Ideally this needs to be in Korn (ksh) shell to be cross server compatible. I need this to work with Linux, Solaris, HP-UX and AIX. If I can't get this working it isn't a game killer, but it would be nice rather than the alternative.

Thanks in advanced!
# 2  
Old 02-03-2010
Quote:
Originally Posted by kungfusnwbrdr
I'm working on a shell script that I would like to store environment variables in an external file. I'm familiar with sourcing a file with variables in it, but I was looking for the ability to just source a section of the config file depending on what part of the script is being run.
Quote:
Ideally this needs to be in Korn (ksh) shell to be cross server compatible. I need this to work with Linux, Solaris, HP-UX and AIX.

If you want your script to be portable, you should use POSIX syntax, not ksh.

Example config file:

Code:
section=a
x=1
y=2
z=3
section=b
z=-1
y=666
y=13
section=c

Use section $1:

Code:
eval "$(sed -n "/section=$1/,/section=/p" "$file")"

Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

parsing a config file using bash

Hi , I have a config _file that has 3 columns (Id Name Value ) with many rows . In my bash script i want to be able to parse the file and do a mapping of any Id value so if i have Id of say brand1 then i can use the name (server5X) and Value (CCCC) and so on ... Id Name ... (2 Replies)
Discussion started by: nano2
2 Replies

2. Shell Programming and Scripting

Parsing Nagios service config files with awk

Hope someone can help, I've been pulling my hair out with this one... I've written a shell script that does a sanity check on our quite extensive Nagios configuration for anything that needs cleaning up but wouldn't make the Nagios daemon necessarily bork or complain. One section of the script... (2 Replies)
Discussion started by: vinbob
2 Replies

3. Shell Programming and Scripting

Shell script that will compare two config files and produce 2 outputs 1)actual config file 2)report

Hi I am new to shell scripting. There is a requirement to write a shell script to meet follwing needs.Prompt reply shall be highly appreciated. script that will compare two config files and produce 2 outputs - actual config file and a report indicating changes made. OS :Susi linux ver 10.3. ... (4 Replies)
Discussion started by: muraliinfy04
4 Replies

4. Shell Programming and Scripting

Parsing config-file (perl)

Hi, i'm trying to parse a config file that have alot of rows similar to this one: Example value value value What i want to do is to split and save the row above in a hash, like this: Example = value value value Basically i want to split on the first whitespace after the first... (3 Replies)
Discussion started by: mikemikemike
3 Replies

5. UNIX for Dummies Questions & Answers

Issue with parsing config variables

I am using MKS tool kit on windows server. One config variable is defined in windows environment and I am trying to use that variable. # Below RootDir is defined in windows RootDir="\\f01\var" # in unix script details="$RootDir/src|$RootDir/tgt" src=`echo $details|awk -F '|' '{print... (1 Reply)
Discussion started by: madhukalyan
1 Replies

6. Shell Programming and Scripting

parsing config file to create new config files

Hi, I want to use a config file as the base file and parse over the values of country and city parameters in the config file and generate separate config files as explained below. I will be using the config file as mentioned below: (config.txt) country:a,b city:1,2 type:b1... (1 Reply)
Discussion started by: clazzic
1 Replies

7. Shell Programming and Scripting

Parsing config file

Hi All, I have a requirement to parse a file. Let me clear you all on the req. I have a job which contains multiple tasks and each task will have multiple attributes that will be in the below format. Each task will have some sequence number according to that sequence number tasks shld... (0 Replies)
Discussion started by: rajeshorpu
0 Replies

8. Shell Programming and Scripting

Config File with ksh

I want to read a config file with a few variables in it like this #include <bretest.config> the content of the file should be more or less String1="abc" String2="DEf" or whatever. How can I do this (this with #include ... doesn't work...) ? Thanks for your help Lucae (2 Replies)
Discussion started by: lucae
2 Replies

9. Shell Programming and Scripting

Perl parsing compared to Ksh parsing

#! /usr/local/bin/perl -w $ip = "$ARGV"; $rw = "$ARGV"; $snmpg = "/usr/local/bin/snmpbulkget -v2c -Cn1 -Cn2 -Os -c $rw"; $snmpw = "/usr/local/bin/snmpwalk -Os -c $rw"; $syst=`$snmpg $ip system sysName sysObjectID`; sysDescr.0 = STRING: Cisco Internetwork Operating System Software... (1 Reply)
Discussion started by: popeye
1 Replies

10. Shell Programming and Scripting

Parsing and getting data from XML file using ksh script

Hi All, I have a xml file for example as described below <xml> <address> <street><street> <address/> <isbn>426728783932020308393930303</isbn> <book> <name> </name> </book> . . . </xml> My problem is to get the isbn number from the above described file using ksh script. Could... (6 Replies)
Discussion started by: vinna
6 Replies
Login or Register to Ask a Question

Featured Tech Videos