Dica Linux: Crie vários subdiretórios com um único comando
Quando queremos criar um diretório que contém vários subdiretórios (árvore de diretórios) utilizamos o comando mkdir várias vezes. No entanto, existe uma forma mais rápida e é precisamente isso que hoje lhe vamos ensinar.
Venha aprender a criar vários diretórios e subdiretórios com um único comando.
A forma mais lenta...
Imagine que criamos um diretório chamado Pplware e que, de seguida, queremos criar quatro subdiretórios dentro de Pplware. Normalmente, aquilo que grande parte das pessoas faz é utilizar o comando mkdir quatro vezes dentro do diretório Pplware.
mkdir Autores |
mkdir Artigos |
mkdir Categorias |
mkdir Linux |
Imagine que quer criar 20 subdiretórios. Não quer, com certeza, utilizar 20 vezes o comando mkdir até ter todos os diretórios criados.
Deste modo, existe uma forma que permite combinar todos os mkdir num único comando.
Agora mais rápido...
Para criar um novo diretório com vários subdiretórios apenas é necessário escrever o comando seguinte e premir Enter (obviamente que pode mudar o nome dos diretórios para aquilo que lhe apetecer).
Com este comando deve utilizar a opção -p para criar o diretório principal em primeiro lugar caso este não exista (no nosso caso seria Pplware). Se não fizer isto e o diretório do topo da árvore não estiver criado vai aparecer uma mensagem de erro.
mkdir -p Pplware/{Autores, Artigos, Categorias, Linux} |
Assim, o que vai resultar daqui é Pplware/Autores, Pplware/Artigos, Pplware/Categorias, Pplware/Linux. Foram criados quatro subdiretórios do diretório Pplware, tal como pode ser visto na captura de ecrã acima.
Pode também aplicar a técnica utilizada acima para criar outros diretórios dentro de subdiretórios. Basta utilizar chavetas dentro das chavetas.
Vamos então criar dois subdiretórios dentro do diretório Autores. Vamos chamar-lhes Pedro e Eduardo. Então escreveríamos assim.
mkdir -p Pplware/{Autores/{Pedro, Eduardo}, Artigos, Categorias, Linux} |
Tal como aconteceu anteriormente, os quatro subdiretórios foram criados e ainda ficamos com mais dois diretórios dentro do diretório Autores.
Conclusão
É extremamente fácil criar vários diretórios com um único comando e pode já colocar em prática aquilo que aprendeu hoje.
Estas dicas são muito úteis para quem quer poupar tempo e, ao mesmo, tempo aprender mais acerca da linha de comandos que, sem dúvida, é uma ferramenta extremamente útil.
Leia também:
Este artigo tem mais de um ano
muito útil, desconhecia o comando.
Já agora podem fazer alias disto: { mkdir -p “$1” && cd “$1”; }
desta forma entra logo no diretorio.
Outra cena fixe era parar de ter artigos destes, porque quem tem estas dúvidas perde 10 segundos no google, vai parar ao stackoverflow e tá feito.
+1
Acho fixe esses artigos, encara-os mais como dicas e truques e curiosidades.
Claro que concordo que o Stackoverflow é um dos melhores caminhos de resoluções de dúvidas colaborativo, bem visto.
É dificil duvidar de algo quando se desconhece a sua existencia. Ou achas que quem publica o artigo pensa: “Deixa lá postar um artigo para ajudar aqueles que tiveram esta duvida no ultimo dia”…
É engraçado porque aposto que te deste ao trabalho de dar uma resposta a uma duvida inexistente aqui mas nunca deste uma resposta a uma duvida a sério no stackoverflow.
Conforme exemplo acima, o comando conforme descrito abaixo não esta correto;
mkdir -p Pplware/{Autores/{Pedro, Eduardo}, Artigos, Categorias, Linux} (ERRADO)
O comando correto esta descrito logo abaixo como exemplo;
mkdir -p Pplware/Autores/{“Pedro”,”Eduardo”} “Artigos” “Categorias” “Linux” (CORRETO)
errado também!
Linux terminal rules!
Obrigado por essa excelente contribuição.
Adorei mesmo
Boas, será que alguém me poderia ajudar? Não consigo criar diretórios com este formato:
├── Pec_des
│ ├── editaveis
│ │ ├── 3D
│ │ ├── BIM
│ │ └── CAD
│ └── n_editaveis
└── Pec_esc
├── editaveis
│ └── Mapa_quantidades
└── n_editaveis
└── Mapa_quantidades
mkdir -p Pec_des/{editaveis/{3D,BIM,CAD},n_editaveis} Pec_esc editaveis/Mapa_quantidades n_editaveis Mapa_quantidades
Muito Obrigado João Nobrega! Abraço!