Это должно делать то, что вам нужно (в Python):
import os
import shutil
def maven_to_eclipse(maven_dir, eclipse_dir):
# assumes mode of maven_dir will be the same as eclipse_dir
new_mode = os.stat(maven_dir).st_mode
if os.path.exists(eclipse_dir):
# if new_dir doesn't exist
# create it with same permissions as old_dir
os.mkdirs(eclipse_dir, new_mode)
# create directories under new_dir: src, ebscontent, ebscontent/META-INF
# use os.path.join to work on multiple os
os.mkdir(os.path.join(eclipse_dir, 'src'), new_mode)
os.mkdir(os.path.join(eclipse_dir, 'ebscontent'), new_mode)
os.mkdir(os.path.join(eclipse_dir, 'ebscontent', 'META-INF'), new_mode)
# cp old/deployment.xml new/ebsconent/META-INF/deployment.xml
shutil.copy2(os.path.join(maven_dir, 'deployment.xml'),
os.path.join(eclipse_dir, 'ebscontent', 'META-INF', 'deployment.xml'))
# cp old/jboss-esb-unfiltered.xml new/ebsconent/META-INF/jboss-esb-unfiltered.xml
shutil.copy2(os.path.join(maven_dir, 'jboss-esb-unfiltered.xml'),
os.path.join(eclipse_dir, 'ebscontent', 'META-INF', 'jboss-esb-unfiltered.xml'))
# cp old/log4j.xml new/ebsconent/log4j.xml
shutil.copy2(os.path.join(maven_dir, 'log4j.xml'),
os.path.join(eclipse_dir, 'ebscontent', 'log4j.xml'))
# cp old/readme.txt new/readme.txt
shutil.copy2(os.path.join(maven_dir, 'readme.txt'),
os.path.join(eclipse_dir, 'readme.txt'))
if __name__ == '__main__':
base_path = 'C:\\Path\\To\\Maven Dirs'
maven_dirs = ('my_example', 'another_example', 'third_example')
for maven_dir in maven_dirs:
maven_to_eclipse(os.path.join(base_path, maven_dir),
os.path.join(base_bath, maven_dir + '_eclipse'))
Это должно работать на нескольких ОС.Это можно было бы написать короче, но это было бы более запутанным для новичка.Не делается попытка отловить исключения.Например, os.mkdirs может завершиться ошибкой, если новый каталог уже существует.
Измените base_path
и maven_dirs
перед запуском.