In my main script, after I get the operating system of the machine I'm executing the script on and assigning it to variable $OPER_SYS, the script will read this control file. For every line with the value of $OPER_SYS, I want the command on the last column be executed.
Ok, let us start with the easy part: the most basic thing you have to take care of is the difference between these systems: HP-UX has (IIRC) a Korn Shell as default shell, some Linux systems (sorry, Linux is not my strong side) have bash, others have even more obscure shells (i remember running into some dash awhile ago, whatever that is). Furthermore the exact composition of the default PATH variable may different, i.e /bin is sometimes a link to /usr/bin, sometimes not, etc.. My suggestion is to first create a large case-switch where you take care of these differences, like this sketch:
Notice that i.e. HP-UX has some peculiarities: the df command exists, but if you want an output that resembles what you would expect you have to use bdf. (This might not be relevant in your case, but there might be similar things that are.) Also notice that commands dealing with package management, user management, logical volumes and similar things are different in different platforms. You may need to create a function for these things which gets some parameters and then does OS-dependent things depending on the value of $OPER_SYS.
Quote:
Originally Posted by The Gamemaster
Please take note of the carriage return on the first HP-UX line. It's intended, because I want the sed command to find the line starting with Google and add a new line after that with the text on the right hand side...
This - and similar problems with special characters - is a problem which IMHO cannot be fully solved in shell: shells always interpret in some way what they read. Masking/escaping character in your input will only get you that far. A real solution would be a parser, but it would have to be written in a HLL.
So, if you can narrow down a list of special characters you need to be able to cope with - starting with the newline - a (maybe not very pretty but workable) solution might be found, otherwise i suggest you implement your problem not in shell but in some high-level language.
I want to go through the list of items and run it.
while running it, some of them will have either
>there is no response # and then end it... so that it can go to next item
OR
>there is response # but in order to break out of it, u need to do Control c.
How do you send control... (6 Replies)
I have the following statement in script:
find ${LANDING_FILE_DIR}${BTIME_FILENAME_PATTERN2} -print | while read file; do
...
done
When there are no files located by the find comand it returns:
"find: bad status-- /home/rnitcher/test/....." to the command line
How do I get control in... (3 Replies)
Hi,
I have taken a piece of code from a book, which is working as per the specification. The code....
for entry in *
do
if
then
echo $entry
fi
done
The sub-directories present in the current directory will be displayed while executing.
... (3 Replies)
I have an empty .gz file in archival directory. And I am redirecting to a dat file. My while loop is not getting ended. I need the solution.
cnt=0
while read line
do
cnt=`expr $cnt + 1`
echo "$ARCH_DIR/$line.gz" >> $DATA_DIR/$FILE_LIST_FILE_FEB
FILE_NAMES=${FILE_NAMES}"... (2 Replies)
Hey guys,
I have this file generated by me... i want to create some HTML output from it.
The problem is that i am really confused about how do I go about reading the file.
The file is in the following format:
TID1 Name1 ATime=xx AResult=yyy AExpected=yyy BTime=xx BResult=yyy... (8 Replies)
Hello,
I would like to control and check the right parameters
$1 must have 4 alphabetics digits among eora qora pora fora
$2 must have 2 numerics digits 00 to 11
$3 must have 2 numerics digits 00 to 59
$4 must have 10 characters alpha numerics as 2013-02-26
For example :
In case 5) if i... (1 Reply)
Hello,
I would like to control and check the right parameters
$1 must have 4 alphabetics digits among eora qora pora fora
$2 must have 2 numerics digits 00 to 11
$3 must have 2 numerics digits 00 to 59
$4 must have 10 characters alpha numerics as 2013-02-26
For example :
In case 5) if i... (15 Replies)
Hello All,
I have an awk script which parses my log file and prints number grepping from a specific line/pattern, now i have to come with a shell script to continue reading the log untill the job is completed, which i would know while reading session log untill process encounters a final... (1 Reply)