summaryrefslogtreecommitdiff
path: root/src/rename-logic.py
diff options
context:
space:
mode:
authorRyo Nakamura <upa@haeena.net>2022-11-18 14:42:23 +0900
committerRyo Nakamura <upa@haeena.net>2022-11-18 20:20:19 +0900
commit5e7aa774cafef00e2ec911ec978f07acedeadcae (patch)
tree71b082e74a365aba23552e73c140a7d912b9b581 /src/rename-logic.py
parentb8d58b1fba1d29d36b98dd19e544ff3002b286e4 (diff)
fix when copy multiple sources and various tiny fixes
* when copying multiple sources, target must be directory * add multi-src copy test and parametrize src/dst prefixes * cleanup REAMDE (s/sessions/connections/g) * make error output in copy functions simple
Diffstat (limited to 'src/rename-logic.py')
-rwxr-xr-xsrc/rename-logic.py14
1 files changed, 9 insertions, 5 deletions
diff --git a/src/rename-logic.py b/src/rename-logic.py
index 1544133..6f6a4ec 100755
--- a/src/rename-logic.py
+++ b/src/rename-logic.py
@@ -32,13 +32,17 @@ def recursive(src, rel_path, dst, dst_should_dir, replace_dir_name):
recursive(next_src, next_rel_path, dst, dst_should_dir, False)
-def fill_dst(src, dst):
- dst_should_dir = isdir(src) | isdir(dst)
- replace_dir_name = not isdir(dst)
- recursive(src, "", dst, dst_should_dir, replace_dir_name)
+def fill_dst(srclist, dst):
+ dst_must_dir = len(srclist) > 1
+ for src in srclist:
+ dst_should_dir = isdir(src) | isdir(dst)
+ replace_dir_name = not isdir(dst)
+ recursive(src, "", dst, dst_should_dir | dst_must_dir, replace_dir_name)
def main():
- fill_dst(sys.argv[1], sys.argv[2])
+ if (len(sys.argv) < 2):
+ print("usage: {} source ... target".format(sys.argv[0]))
+ fill_dst(sys.argv[1:len(sys.argv) - 1], sys.argv[len(sys.argv) - 1])
main()