From 5751f77e78daf4df7d22f4eb31cf00a644cbccc5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=2E=C3=87a=C4=9Flar=20Onur?= Date: Tue, 6 Sep 2005 19:13:17 +0000 Subject: [PATCH] =?UTF-8?q?tools/lspisi=20dirs=20xxx.pisi=20klas=C3=B6r=20?= =?UTF-8?q?listesini,=20tools/lspisi=20xxx.pisi=20i=C3=A7eri=C4=9Fi=20vers?= =?UTF-8?q?in...?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- tools/lspisi | 62 +++++++++++++++++++++++++++++++++------------------- 1 file changed, 40 insertions(+), 22 deletions(-) diff --git a/tools/lspisi b/tools/lspisi index c68aa0f3..56c655c2 100755 --- a/tools/lspisi +++ b/tools/lspisi @@ -9,31 +9,49 @@ # any later version. # # Please read the COPYING file. -# +import os import sys import zipfile -if not sys.argv[1]: - print "pisi file name required..." - sys.exit() - -if not zipfile.is_zipfile(sys.argv[1]): - print "ZIP file required..." - sys.exit() - -f = zipfile.ZipFile(sys.argv[1], "r") - -filelist = [] - -for file in f.namelist(): - filelist.append(file) - -filelist.sort() - -for file in filelist: - if f.getinfo(file).external_attr == 2716663808: - print file + " --> symlink" +def openZip(fileName): + if not zipfile.is_zipfile(fileName): + print "ZIP file required..." + sys.exit() else: - print file + f = zipfile.ZipFile(fileName, "r") + return f + +def fillFileList(zipFile): + filelist = [] + + for file in zipFile.namelist(): + filelist.append(file) + filelist.sort() + return filelist + +def uniq(alist): + set = {} + return [set.setdefault(e,e) for e in alist if e not in set] + +if __name__ == "__main__": + + if sys.argv[1] == "dirs": + f = openZip(sys.argv[2]) + dirlist =[] + for file in fillFileList(f): + dirlist.append(os.path.dirname(file)) + + for dir in uniq(dirlist): + print dir + elif sys.argv[1]: + f = openZip(sys.argv[1]) + for file in fillFileList(f): + if f.getinfo(file).external_attr == 2716663808: + print file + " --> symlink" + else: + print file + else: + print "pisi file name required..." + sys.exit()