Eu usei mkdir para criar uma pasta pai com 10 pastas filhas adicionais usandomkdir -p pai\filho{1..10}. Agora preciso criar um arquivo txt em cada uma dessas 10 pastas filhas como (nome da pasta pai).txt
Não consigo usar o comando touch porque cada documento de texto também precisa conter uma linha de texto.
Minha ideia original era criar um loop que fizesse com que cada pasta filho e arquivo txt com a linha de texto especificada fosse individualmente 10 vezes. Achei que isso seria ineficiente.
Posso criar todas as 10 pastas filhas e a pasta pai com um único comando. Como eu criaria os arquivos de texto de maneira eficiente com a linha de texto? Ou minha ideia original foi a melhor maneira de fazer isso?
Responder1
Uma das abordagens pode ser semelhante a:
mkdir -p parent/child{1..10}
for d in parent/child{1..10}; do echo "This file is stored in ${d##*/}" > "$d/parent.txt"; done
Visualizando resultados:
$ head parent/child*/parent.txt
==> parent/child10/parent.txt <==
This file is stored in child10
==> parent/child1/parent.txt <==
This file is stored in child1
==> parent/child2/parent.txt <==
This file is stored in child2
==> parent/child3/parent.txt <==
This file is stored in child3
==> parent/child4/parent.txt <==
This file is stored in child4
==> parent/child5/parent.txt <==
This file is stored in child5
==> parent/child6/parent.txt <==
This file is stored in child6
==> parent/child7/parent.txt <==
This file is stored in child7
==> parent/child8/parent.txt <==
This file is stored in child8
==> parent/child9/parent.txt <==
This file is stored in child9