Script para criar pasta e copiar arquivo
Certa vez me deparei com uma pergunta em um fórum sobre o comando 'cp' (copiar arquivo), se ele seria capaz de copiar um arquivo para uma pasta que não existe, compreendendo claro que isso indicaria que ele deveria criar a tal pasta.
A resposta foi categórica, dizendo que não existe tal instrução no comando 'cp'. Daí me veio a pergunta: "e se fosse um script?"
Claro que na mesma hora fui ao terminal criar o tal comando! É bem simples de fato!
#!/usr/bin/env bash
#
# Script para copiar arquivo(s) para uma pasta de destino
# criando a mesma caso ela não exista
#
# Checa se o caminho de destino existe
if [[ -e "$2" ]]; then
# Caso exista a cópia é realizada com opção verbose (-v) ativada
cp -v "$1" "$2"
else
# Caso a pasta não exista ela é criada antes da cópia acontecer
mkdir -p "$2" && cp -v "$1" "$_"
fi
Basta copiar o script acima, colar via editor de texto (vim, nano, xed, etc), salvar com um nome simples, curto e de fácil identificação e torna-lo executável dentro de uma pasta no seu $PATH de comandos.
Não preciso dizer que apesar de simples, sempre pode haver algo a melhorar, então, sinta-se livre pra modificar e adaptar o script às suas necessidades. ;)