+if not ftpio.lock(sys.argv[1], True):
+ print "%s tree already locked" %s sys.argv[1]
+ sys.exit(1)
+
+if not ftpio.lock(sys.argv[2], True):
+ ftpio.unlock(sys.argv[1])
+ print "%s tree already locked" %s sys.argv[2]
+ sys.exit(1)
+
+try:
+ srctree=FtpTree(sys.argv[1], loadall=True)
+ dsttree=FtpTree(sys.argv[2])
+ srctree.mark4moving(sys.argv[3:])
+
+ srctree.movepkgs(dsttree)
+except ftptree.SomeError:
+ # In case of problems we need to unlock the tree before exiting
+ ftpio.unlock(sys.argv[1])
+ ftpio.unlock(sys.argv[2])
+ sys.exit(1)
+
+ftpio.unlock(sys.argv[1])
+ftpio.unlock(sys.argv[2])