Help Unix script


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Help Unix script
# 1  
Old 01-15-2010
Help Unix script

Hi all Unix gurus,

I am new to scripting in Unix.
I need help to do do the following:
I have a directory that contain multiple daily backups of multiple systems with this format:

sys1.192.168.0.1_date1.loc
sys1.192.168.0.1_date2.loc
sys2.192.168.0.2_date1.loc
sys2.192.168.0.2_date2.loc
sys2.192.168.0.3_date1.loc
sys3.192.168.0.3_date2.loc


I need a script to be able to list the IPs of all systems along with their past 2 backups in this format:
192.168.0.1,sys1.192.168.0.1_date1.loc,sys1.192.168.0.1_date2.loc

Your help is very much appreaciated.

Mikey
# 2  
Old 01-15-2010
Quote:
ls | awk -F[\._] ' {arr[$2"."$3"."$4"."$5]=arr[$2"."$3"."$4"."$5]","$0 } END { for(i in arr) { print i arr[i] } } '
# 3  
Old 01-15-2010
so many ways to do this...

Code:
#!/bin/ksh
## generate a list of unique ip addresses
for IP in $(ls -1 | cut -d"_" -f1 |cut -d"." -f2-5|sort -u) 
do
   ## for each ip address, generate a list of unique sys names
   for SYS in $(ls -1 *${IP}* | cut -d"." -f1|sort -u)
   do
      ## print the ip address 
      echo "${IP}\c"
      typeset -i COUNT=1
      ## generate a list of backup file names in date order
      for BACKUP in $(ls -1rt ${SYS}.${IP}* )
      do
          ## print the file info
          echo ",${BACKUP}\c"

          ## increment the counter 
          (( COUNT=${COUNT}+1 ))

          ## test for how many have been printed (you only wanted 2)
          if  [[ ${COUNT} -gt 2 ]]
          then 
             ## get me out of this loop to stop printing for this IP and SYS combination
             break
          fi
      done

      ## end the line
      echo "\n"
   done
done

This prints the backups in reverse order - newest to oldest. This also relies on the timestamp of the file (when the file was created) being the driving factor, not the date listed in the file name. Using the date listed in the filename would require a few more lines (and the actual date format that will be used in the filename).

Let me know how that works for ya.
# 4  
Old 01-15-2010
I am sorry for posting the wrong file format. The actual formats are:

sys1_192.168.0.1_20091119.145130
sys1_192.168.0.1_20091120.145130
sys2_192.168.0.2_20091120.154865
sys2_192.168.0.2_20091120.154865
and so on...

How would that change the script

Thanks a Million
# 5  
Old 01-15-2010
And what should be the output format?
# 6  
Old 01-15-2010
The output should be a list of IP followed by the last 2 or 3 backup in a csv format:

192.168.0.1,sys1_192.168.0.1_20091119.145130,sys1_192.168.0.1_20091119.145130
192.168.0.2,sys2_192.168.0.2_20091120.154865,sys2_192.168.0.2_20091120.154865
and so on sorted by IPs from lower to higher
# 7  
Old 01-15-2010
Have you tried the code of anbu23?
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Downloading hdfs file to local UNIX through UNIX script

Hi All , I am very new to unix script.I am aware of unix commands but never put together in unix script level.If any one can suggest me technical guidance in the below scenario that will highly beneficial. Data have been already migrated from mainframe to Hadoop file system(HDFS).HDFS server... (15 Replies)
Discussion started by: STCET22
15 Replies

2. Shell Programming and Scripting

How to pass Oracle sql script as argument to UNIX shell script?

Hi all, $ echo $SHELL /bin/bash Requirement - How to pass oracle sql script as argument to unix shell script? $ ./output.sh users.sql Below are the shell scripts and the oracle sql file in the same folder. Shell Script $ cat output.sh #!/bin/bash .... (7 Replies)
Discussion started by: a1_win
7 Replies

3. Shell Programming and Scripting

How can i run sql queries from UNIX shell script and retrieve data into text docs of UNIX?

Please share the doc asap as very urgently required. (1 Reply)
Discussion started by: 24ajay
1 Replies

4. Shell Programming and Scripting

FTP from windows to unix server using unix shell script

Hi, Is it possible to ftp a huge zip file from windows to unix server using unix shell scripting? If so what command i need to use. thanks in advance. (1 Reply)
Discussion started by: Shri123
1 Replies

5. Shell Programming and Scripting

UNIX script to FTP file from UNIX server to windows

Hi, I am new to this subject.....Can someone please help me out with the script... unix usernm "sdhftst" unix pwd "chsd13" windows usernm "dfghtst" windows pwd "chsd13" path..../xxx/xxxxx/xxxxxx/xxxxxxx please can u get me a script...its only one file to get ftp. Thanks... (2 Replies)
Discussion started by: himakiran9
2 Replies

6. Shell Programming and Scripting

Need to write a script to reformat a file in unix but not familiar with unix

unix script must do the fiollowing open a file containing comma delimited records > each record contains 10 fields > removes the 2nd field and use that same field containing fields 2 to 10 the original record after fprocessing should containing fields 1 and 3 a new erecord must be... (10 Replies)
Discussion started by: dwightja
10 Replies

7. UNIX for Advanced & Expert Users

Executing a shell script from windows;script present in unix

I need to execute a shell script kept in unix machine from windows. User id, password area available. For eg. There's a shell script wich moves all the logs kept in my home directory to a directory named LOGS. Now i need to get this done through windows; either using a batch file, or java... (4 Replies)
Discussion started by: rajneesh_kapoor
4 Replies

8. Shell Programming and Scripting

(Urgent):Creating flat file using sql script and sqlplus from UNIX Shell Script

Hi, I need help urgently for following issue. Pls help me to resolve this issue. I am calling sql script file(file1.sql) from UNIX Shell Script(script1.ksh) using sql plus and trying to create flat file that contains all records returned from SQL query in SQL script(file1.sql) I given... (6 Replies)
Discussion started by: praka
6 Replies

9. Shell Programming and Scripting

ftp from windows to unix using a perl script on unix machine

i need to ftp a file from windows to a unix machine by executing a sript(perl/shell/php) from that unix machine.i can also use HTML and javascript to build forms. (3 Replies)
Discussion started by: raksha.s
3 Replies

10. Shell Programming and Scripting

FTP script for sending a file from one unix directory to another unix server director

Hi, My local server is :/usr/abcd/ Remote server is :/Usr/host/test/ I want to send files from local unix directory(All files starting with O_999) to remote host unix directory. Can any body give me the Unix Shell script to do this. One more doubt: Shall we need to change the file... (1 Reply)
Discussion started by: raja_1234
1 Replies
Login or Register to Ask a Question