All pastes #608299 Raw Edit

Unnamed

public text v1 · immutable
·published 2007-07-08 05:50 UTC
rendered paste body
#!/usr/local/bin/python

# Sort all fields first, then first 4 fields (4th column = date field), finally by 
# first column.  The end result is older backupids at top of queue to be expired.     
# This produces a sql-like "sort by" output, also known as a stable sort.

# Require Python 2.5 (r25:51908, Sep 20 2006, 03:46:40)

from sys import argv

fh=file(argv[1])

L=fh.readlines()
len=L.__len__()

def splitf(list):
  list=list.split()[0:4]
  return list

for i in range(L.__len__()):
  L[i].rstrip()

L = sorted(L,key=lambda x: x.split(),reverse=False) 

for i in range(len):
  for j in range(i+1,len):
    if splitf(L[i]) == splitf(L[j]):
       if L[i].split()[0] != 'NP':
          L[i] = 'NP_' + L[i+1]
       break
    else:
       i=j
       break

L = sorted(L) 

for i in range(len):
  print L[i],