shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] Listar diretorios


From: darkfronza
Subject: Re: [shell-script] Listar diretorios
Date: Mon, 17 Aug 2009 10:18:22 -0300
User-agent: Thunderbird 2.0.0.18 (X11/20081105)

Salve amigo, bem vindo a lista, fiz um script para te auxiliar

Lembrando que existem mil maneiras, e muitas bem mais espertas que a que eu implementei, para resolver qualquer problema.

Basicamente, entra no diretorio home, lista os diretorios, entra no diretorio de cada usuario, e exclui os diretorios terminados em in e out

Se tiver dúvidas só perguntar, de uma estudada no script, abraço

#!/bin/bash

EXCLUDE_REGEX='in$|out$|^.{1,2}$'

# Hoje
DATA="$(date +'%d%m%Y')"
# Destino do backup
DEST_BACKUP="/mnt/win/${DATA}"

# Se nao existe o diretorio destino de backup, cria
[ -d "${DEST_BACKUP}" ] || mkdir "${DEST_BACKUP}"

cd /home;

for DIR in *; do
   if [ -d "${DIR}" ]; then
       cd "${DIR}"
# Excluimos os diretorios .. , . , terminados em in (in$), terminados em out (out$) find . -maxdepth 1 | grep -Ev "${EXCLUDE_REGEX}" | paste -s | xargs tar -cvjf "${DEST_BACKUP}"/Backup-$DIR-${DATA}.tar.bz2 cd ..
   fi;
done


Informática GMAIL wrote:
Bom dia pessoal,
Antes de mais nada quero agradecer a oportunidade de participar desse grupo,
estou entrando hoje (13/08/2009)
Comecei a mexer com Linux agora e tenho muitas duvidas sobre Shell-script e
agradeço antecipadamente se alguém puder me ajudar.

Estou com a seguinte situação, tenho um diretório /home no meu servidor onde
tem as pastas dos usuários.
Existe as pastas dos usuários e cada usuário também tem mais 2 pastas que
terminam com in e out.
Por exemplo: user1, user1in, user1out, xyz, xzyin, xyzout, etc.

Eu quero listar apenas os usuários e não os in e out, como posso fazer isso?

Eu estou querendo criar um script de backup para que ele entre no user1 e da
um tar compactando, depois ele entre no xyz e dar um tar e assim por
diante.

Eu consegui que ele entre em todos os diretórios.

Segue o script bem simples

#!/bin/bash
#mkdir /mnt/win/$(date +"%d%m%Y")


for DIR in $(ls -d */)
#|grep '^out')
do
echo "Efetuando Backup do diretorio - $DIR..."
# tar -cvjf /mnt/win/$(date +"%d%m%Y")/Backup- $DIR-$(date
+"%d%m%Y").tar. bz2 /home/$DIR 2>error.txt
Done

Alguém pode me dar um ajuda?

Obrigado

Andre



[As partes desta mensagem que não continham texto foram removidas]





reply via email to

[Prev in Thread] Current Thread [Next in Thread]