But you don't need to run print and cut in backticks 10 times to process one line of text either. It is extremely slow to run awk/cut/sed 10 times to process 10 single bits of text -- that's like making 10 phone calls to say 10 words. I'd just split in the shell itself:
Code:
OLDIFS="$IFS" # Save the default value of the special IFS variable for later. It controls splitting.
SERVERLIST="1:Server_1a 1:Server_1b 2:Server_2a 2:Server_2b 3:Server_3a 3:Server_3b 4:Server_4a 4:Server_4b"
IFS=": " # Split on space, or :
set -- $SERVERLIST # $1=1, $2=Server_1a, $3=1, $4=Server_1b, etc.
IFS="$OLDIFS" # Set splitting back to normal
VAR=""
while [ "$#" -gt 0 ] # Loop until $1, $2, ... are empty. We remove two arguments per loop.
do
# Append new result to VAR. If VAR was "1" before, it'll be "1 2", etc.
VAR="$VAR $(cmd $1 ".././ServerBounce.ksh $2")"
shift ; shift # Get rid of $1, $2, and shift down so the list starts at $1 again.
done
# $1 will be the result from the first process, $2 is the result from the second, etc.
set -- $VAR
echo "$# results in list"
echo "First is $1"
echo "Second is $2"
...
Last edited by Corona688; 05-24-2012 at 02:37 PM..
hi,
i want to increment a Variable but it doesnt work.
here my codé
COUNT=1
COUNT= 'expr $COUNT + 1'
i've tried it in the prompt but it print me:
expr: syntaxerror
What does I make wrong? (4 Replies)
Hi,
I want to write a perl script, which will increment number stored in file. I want to do this without any file handles. I think we have to use some UNIX commands. I am not sure how to do this with file handles.
Thanks, (1 Reply)
Hi All,
I have a variable n that stores a number.
Eg. echo $n comes out to be 120.
I need to print 121 using echo command on n.
Please advice.
Thanks in advance !! (4 Replies)
Hello There,
I have been trying to increment the value of variable to 1, 2, 3 etc. but, it displays
1
1+1
1+1+1
.....
:wall:
Could anyone help out with this?
for i in *.*
do
s=`expr $s+1`
echo $s
j=$i$j
mv $i $j
done
Any help is appreciated? (24 Replies)
Hi there everyone!
This is my first post so be gentle.
I have a small bash script that is extracting 3 line every 3 lines. I got the AWK part but i cant do the loop part.
#!/bin/bash
export line=`awk 'END { print NR }' btnew`
echo $line
for i in {1..$line..3} #increment
do
echo... (2 Replies)
Hi All,
I am new to this forum and a novice at shell script. I am trying to write a script to determine each of the NIC configured on a linux system and its speed and Duplex. I came up with the following piece of code:
echo `ifconfig -a | grep eth > /home/a/nic.txt`
i=`awk -F, '{print... (4 Replies)
Hi All,
I have a file which has hundred of records with fixed number of fields. In each record there is set of 8 characters which represent the duration of that activity. I want to sum up the duration present in all the records for a report. The problem is the duration changes per record so I... (5 Replies)
hey guys,
I need to incerement the date variable for instance
echo `date '+%F %H:%M:00'`
this produces
2014-08-02 20:05:00
-I will grant this to : $Datehour and need to assign 1 hr from now to $Datelasthour
-the script time will be used to talk to DB system information.
however... (4 Replies)
Hi,
I have parameter file wo_location.prm which has a date variable $last_upd_date= 02032016.
I need to write a unix shell script to find that variable and increment it by 1 day.
The path to the file is root/dir_lc/shared/param/wo_location.prm and the variable is $last_upd_date.
Any... (2 Replies)
Discussion started by: isenhiem
2 Replies
LEARN ABOUT MINIX
upslog
UPSLOG(8) NUT Manual UPSLOG(8)NAME
upslog - UPS status logger
SYNOPSIS
upslog -h
upslog [OPTIONS]
DESCRIPTION
upslog is a daemon that will poll a UPS at periodic intervals, fetch the variables that interest you, format them, and write them to a
file.
The default format string includes variables that are supported by many common UPS models. See the description below to make your own.
OPTIONS -h
Display the help message.
-f format
Monitor the UPS using this format string. Be sure to enclose format in quotes so your shell doesn't split it up. Valid escapes within
this string are:
%%
Insert a single "%"
%TIME format%
Insert the time with strftime formatting
%ETIME%
Insert the number of seconds, ala time_t. This is now a 10 digit number.
%HOST%
insert the local hostname
%UPSHOST%
insert the host of the UPS being monitored
%PID%
insert the pid of upslog
%VAR varname%
insert the value of variable varname
The default format string is:
%TIME @Y@m@d @H@M@S% %VAR battery.charge% %VAR input.voltage%
%VAR ups.load% [%VAR ups.status%] %VAR ups.temperature%
%VAR input.frequency%
-i interval
Wait this many seconds between polls. This defaults to 30 seconds.
If you require tighter timing, you should write your own logger using the upsclient(3) library.
-l logfile
Store the results in this file.
You can use "-" for stdout, but upslog will remain in the foreground.
-s ups
Monitor this UPS. The format for this option is upsname[@hostname[:port]]. The default hostname is "localhost".
-u username
If started as root, upsmon will setuid(2) to the user id associated with username for security.
If username is not defined, it will use the value that was compiled into the program. This defaults to "nobody", which is less than
ideal.
SERVICE DELAYS
The interval value is merely the number given to sleep(3) after running through the format string. Therefore, a query will actually take
slightly longer than the interval, depending on the speed of your system.
LOG ROTATION
upslog writes its PID to upslog.pid, and will reopen the log file if you send it a SIGHUP. This allows it to keep running when the log is
rotated by an external program.
SEE ALSO
Server:
upsd(8)
Clients:
upsc(8), upscmd(8), upsrw(8), upsmon(8)
Internet resources:
The NUT (Network UPS Tools) home page: http://www.networkupstools.org/
Network UPS Tools 05/21/2012 UPSLOG(8)