Eu tenho um diretório parecido com:
dhcp-18-189-47-44:CE-06-new-stuctures_backup wenxuanhuang$ ls
DFT-00001 DFT-00004 DFT-00007 DFT-00010 DFT-00013 DFT-00016 DFT-00019 DFT-00022 DFT-00025 DFT-00028 DFT-00031 DFT-00034
DFT-00002 DFT-00005 DFT-00008 DFT-00011 DFT-00014 DFT-00017 DFT-00020 DFT-00023 DFT-00026 DFT-00029 DFT-00032
DFT-00003 DFT-00006 DFT-00009 DFT-00012 DFT-00015 DFT-00018 DFT-00021 DFT-00024 DFT-00027 DFT-00030 DFT-00033
E dentro de cada pasta existe um arquivo chamado Li? Fe? O? _0, no entanto, alguns deles podem se sobrepor, por exemplo:
dhcp-18-189-47-44:CE-06-new-stuctures_backup wenxuanhuang$ ls DFT-00001/
Li1Fe5O6_0
dhcp-18-189-47-44:CE-06-new-stuctures_backup wenxuanhuang$ ls DFT-00002/
Li1Fe5O6_0
dhcp-18-189-47-44:CE-06-new-stuctures_backup wenxuanhuang$ ls DFT-00010/
Li2Fe4O6_0
Agora, quero extrair a subpasta em outro diretório. A primeira tentativa que tento é:
find 'pwd' -mindepth 1 -maxdepth 1 -type d -exec sh -c "echo {}; cd {}; ls; cp -r * /Users/wenxuanhuang/Desktop/software/CASM_NEW/LiFeO_from_Alex_2015_08_25/LiFeO2-CE/02-refinement/CE-06-new-stuctures_extracted" \;
No entanto, devido a conflitos de nomes, alguns deles se sobrepõem. o que eu quero é: se eles se sobrepuserem: eu quero renomeá-lo em algo que não é conflitante e copiá-lo para dentro ...
Idealmente, suponha que Li1Fe5O6_0 já esteja na nova pasta e eu copie outro Li1Fe5O6_0, eu gostaria de nomear o último Li1Fe5O6_0 para Li1Fe5O6_1 e copiar o Li1Fe5O6_1 para dentro (no futuro, podemos ter Li1Fe5O6_1 Li1Fe5O6_2 Li1Fe5O6_3 etc) Mas se esta versão do código é muito tediosa. Então não importa ...