LINUX.ORG.RU

История изменений

Исправление justAmoment, (текущая версия) :

Прошу прощения, что не через awk и sed. В рамках изучения мною питона, накропал следующий код.

$ cat l1l2.py

#!/bin/python
fn1 = "list1"
fn2 = "list2"
fn3 = "list2.out"

print "1) uniq list = ", fn1
print "2) work list = ", fn2
print "3) result list = ", fn3

try:
	f1 = open(fn1, "r")
	f2 = open(fn2, "r")
	f3 = open(fn3, "w")

	s1 = [x.strip() for x in f1.readlines()]
	s2 = [x.strip() for x in f2.readlines()]
except:
	pass

s3 = [str(x) + "\n" for x in s2 if x not in s1]
#remove last "\n"
s3[-1] = s3[-1].strip()

try:
	f3.writelines(s3)
except:
	pass

f1.close()
f2.close()
f3.close()

$ cat list1

11
21
32
44
$ cat list2
11
55
21
77
44
cat list2.out
55
77

Исходная версия justAmoment, :

Прошу прощения, что не через awk и sed. В рамках изучения мною питона, накропал следующий код.

$ cat l1l2.py

#!/bin/python
fn1 = "list1"
fn2 = "list2"
fn3 = "list2.out"

print "1) uniq list = ", fn1
print "2) work list = ", fn2
print "3) result list = ", fn3

try:
	f1 = open(fn1, "r")
	f2 = open(fn2, "r")
	f3 = open(fn3, "w")

	s1 = [x.strip() for x in f1.readlines()]
	s2 = [x.strip() for x in f2.readlines()]
except:
	pass

s3 = [str(x) + "\n" for x in s2 if x not in s1]

try:
	f3.writelines(s3)
except:
	pass

f1.close()
f2.close()
f3.close()

$ cat list1

11
21
32
44
$ cat list2
11
55
21
77
44
cat list2.out
55
77