Não consigo resolver essa questão!

1. Não consigo resolver essa questão!

Larissa Lourenço Galdino
asarodas

(usa Debian)

Enviado em 11/03/2020 - 08:21h

Escreva um script que realize um backup dos arquivos da pasta corrente organizando os de acordo com a sua extensão. O script deve copiar todos os arquivos com extensão “.txt” para o diretório ~/txt (que deve ser criado) e todos os arquivos ”.zip” para o diretório ~/zip (que também deve ser criado).

Alguém me ajuda?


  


2. Re: Não consigo resolver essa questão!

Daniel Lara Souza
danniel-lara

(usa Fedora)

Enviado em 11/03/2020 - 10:21h


qual seria a dificuldade ?
o que tu não esta conseguindo realizar nessa tarefa ?


3. Re: Não consigo resolver essa questão!

Matheus
pylm

(usa Gentoo)

Enviado em 11/03/2020 - 11:23h

Usa wildcards pra corresponder todos os arquivos zip e todos os txt.


4. Re: Não consigo resolver essa questão!

João Cláudio de Alcântara
aguamole

(usa Lubuntu)

Enviado em 11/03/2020 - 13:32h

O algorítimo é simples !
Primeira linha coloque isso:
#!/usr/bin/env bash 

após use o programa "mkdir" para criar as pastas desejada.
para ver o manual?
$ man mkdir 

Agora use o programa "cp" para fazer a copia.
Manual:
$ man cp 

E use o coringa "*" no comando "cp" para incluir todos os aquivo que contenha a extensão ".txt" exemplo *.txt incluirá no comando "cp" todos os arquivo com a extensão .txt no comando.
E continue usando o coringa "*" para as outras extensão também.

Com isso você sera capais de criar seu próprio script para essa tarefa.

CPU i5-8400 GTX 750 SofRaid 4xSSD 16GB DDR4 mesmo assim uso Lubuntu.


5. Re: Não consigo resolver essa questão!

PCP
PCP

(usa Kali)

Enviado em 13/03/2020 - 11:18h

Talvez isso te ajude, não esquece de atribuir permissões de execução.

#!/bin/bash
if [-d /mnt/DADOS/BKP];
then
echo ""
else
mkdir /mnt/DADOS/BKP
fi

if [-d /mnt/DADOS/BKP/TXT-PASTA /mnt/DADOS/BKP/PDF-PASTA /mnt/DADOS/BKP/ZIP-PASTA];
then
echo ""
else
mkdir /mnt/DADOS/BKP/TXT-PASTA /mnt/DADOS/BKP/PDF-PASTA /mnt/DADOS/BKP/ZIP-PASTA
fi
cp -R /opt/pasta-teste/qualque-lugar/*.txt /mnt/DADOS/BKP/TXT-PASTA
cp -R /opt/pasta-teste/qualque-lugar/*.zip /mnt/DADOS/BKP/ZIP-PASTA
cp -R /opt/pasta-teste/qualque-lugar/*.pdf /mnt/DADOS/BKP/PDF-PASTA

# as pastas não são sobrescritas.
# os arquivos de mesmo nome a serem copiados são sobrescritos.

talvez também precise https://www.vivaolinux.com.br/dica/Executar-Script-na-Inicializacao-do-Sistema-com-Systemd


6. Re: Não consigo resolver essa questão!

Marcelo Oliver
msoliver

(usa Debian)

Enviado em 13/03/2020 - 15:49h

asarodas escreveu:

Escreva um script que realize um backup dos arquivos da pasta corrente organizando os de acordo com a sua extensão. O script deve copiar todos os arquivos com extensão “.txt” para o diretório ~/txt (que deve ser criado) e todos os arquivos ”.zip” para o diretório ~/zip (que também deve ser criado).

Alguém me ajuda?

Segue:
#!/bin/bash
clear; # limpa a tela
printf "%(%x%t%X)T\nPasta corrente: ${PWD}\n"; #Mensagem => Mostra Data, Hora e o Diretório corrente.
for ext in txt zip;do #Fiz este laço para evitar a repetição de comandos!, Caso queira, coloque mais extensões, Ex: for ext in txt zip pdf html sh jpg;
if ls *.${ext} &>/dev/null;then #Verifica se existe arquivo com a extensão especificada no laço.
#Os passos abaixo, somente serão executados, SE o if é verdadeiro.
[ ! -e ~/${ext}/ ] && mkdir ~/${ext}; #Se o diretório não existe, é criado
echo -e "Copiando arquivos *.${ext} para ~/${ext}/"; #Mensagem . . .
cp *.${ext} ~/${ext^^}/; #Faz a cópia!
fi
done
Obs.: Caso tenha interesse em aprender,
Recomendo:
https://guiafoca.org/cgs/guia/iniciante/index.html
https://aurelio.net/shell/canivete/


______________________________________________________________________
Importante: echo -e "\n$(lynx --dump goo.gl/a9KeFc|sed -nr '/^[ ]+Se/,/dou.$/p')\n"
Att.: Marcelo Oliver
______________________________________________________________________






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts