Parse configuration file & add/remove line in particular section
Greetings,
I recently built a replicated DRBD, Heartbeat, & iSCSI Target Initiator storage server on Ubuntu 10.04 to offer shared storage to server Vmware ESX and Microsoft Clusters. Everything works flawlessly, however I wanted to make a script to create, remove, grow volumes to offer ESX rather then having a technical diagram and instructions so that other technicians are able to do this process with limited Linux knowledge.
I know the basis to Linux scripting with variables and command scripting but I am not sure how to approach parsing a configuration file for iSCSI Target Initiator and adding lines between existing lines under a sub group. I figure it has to be done in an array but I am not sure how to keep it within a parameter as well as add a line adding the next sequential number available.
Let me give an example of my configuration file called ietd.conf:
What I need to do is when my script asks the user which Server they wish to add storage too (lets say ESX) that it targets “Target iqn.2011-03.stroageserver.workgroup.net:VMware.Storage.1” and reads each “Lun #.....” and adds a line below LUN 2 (in example configuration file) as LUN 3? I will replace “/dev/replicated/<volume>” with a variable which I can do. I just do not know how to parse only the lines between “Target iqn” and the next “Target ign” looking for “LUN #” and adding a new line below the existing LUN with a higher sequential number.
I am also not sure how to approach gaps in LUN numbers when volumes are deleted. My assumption is to take the highest LUN # under the target and add one to it but I am not sure if this is correct?
Any insight would be great. Thanks.
Last edited by Aeudian; 03-22-2011 at 12:24 PM..
Reason: Title Change
hi,
I have a 20 line file.
I need a command which will brinf back a specific line based upon the line number I enter.
e.g. the file looks like this and is called file1
jim is a man
john is a woman
james is a man
wendy is a woman
lesley is a woman
i want a command that will... (4 Replies)
I need to get a section of a file based on 2 params. I want the part of the file between param 1 & 2. I have tried a bunch of ways and just can't seem to get it right. Can someone please help me out.....its much appreciated. Here is what I have found that looks like what I want....but doesn't... (12 Replies)
Aloha! I have just over 1k of users that have permissions that they shouldn't under our system. I need to parse a provided list of usernames, check their permissions file, and strip the permissions that they are not allowed to have. If upon the permissions strip they are left with no permissions,... (6 Replies)
Hi,
I understand either AWK or SED can do this, but I not sure how to extract the following configuration in section. Meaning when I need to find code with " ip helper-address 192.168.11.2" , it would start from "interface Serial0/0" and "interface FastEthernet0/1". Only displaying both section... (2 Replies)
Is there an awk, sed, vi or any line command that adds Field Separators (default spaces) to each line in a file?
$cat RegionalData
12FC2525MZLP8266900216
12FC2525MZLP8266900216
12FC2525NBLP8276900216
12FC2525NBLP8276900216
Desired results:
1 2 F C 2525 MZ LP 826 690 02 16
1 2 F C... (2 Replies)
I have searched in a variety of ways in a variety of places but have come up empty.
I would like to prepend a portion of a section header to each following line until the next section header. I have been using sed for most things up until now but I'd go for a solution in just about anything--... (7 Replies)
I can obtain information from itdt inventory command however it display as below, I'd like to print each entity on one line but seperated by :
the file is something like and each section ends with Volume Tag
Drive Address 256
Drive State ................... Normal
ASC/ASCQ... (3 Replies)
In the awk below I am trying to parse the Sample Name below the section. The values that are extracted are read into array s(each value in a row seperated by a space) which will be used later in a bash script. The awk does execute but no values are printed. I am also not sure how to print in a row... (1 Reply)
Hi Gurus,
I have below file which has different sections, need to move the sections to beginning of the each record.
original file
aaa
bbb
ccc
ddd
eee
fff
output file.
aaa
bbb
ccc
ddd
eee
fff (6 Replies)