Copie arquivos de um diretório para outro enquanto cria uma nova pasta para cada arquivo, com o nome do arquivo

Copie arquivos de um diretório para outro enquanto cria uma nova pasta para cada arquivo, com o nome do arquivo

Esta é a primeira vez que faço uma pergunta. Recentemente, estou tentando usar a linha de comando cada vez mais, mas esse problema está além da minha habilidade.

Quero fazer uma transferência de arquivos com várias partes.

1) Quero pegar vários arquivos file_1.md, file_2.md...etc, original_foldere copiá-los paratarget_folder_master

2) Quero pegar cada arquivo, criar uma nova pasta com base no nome de cada arquivo, por exemplo, deve haver uma pasta chamada file_1etc dentrotarget_folder_master

3) Quero poder copiar cada arquivo para a pasta com o nome correspondente

4) e renomeie cada arquivo em sua pasta de destino de seu nome original para index.md, por exemplo, file_1.mddeve ser renomeado index.mdcom o caminho final~/file_1/index.md

Minha esperança é que tudo isso seja automatizado.

Responder1

Experimente isto:

for file in *.md; do
  mkdir "/path/to/target_folder_master/${file%.*}"
  mv "$file" "/path/to/target_folder_master/${file%.*}/index.md"
done

informação relacionada