Raposa_by_Rauhmaru
Olá galera,
Bom, criei um script que ao ser executado dentro de uma pasta com imagens, ele automaticamente cria uma galeria de imagens.
Ele ainda possui uma função extra de renomear os arquivos, se assim você desejar, tudo com interface grafica... barrinha de loading, janelinha de diálogo perguntando o que vc deseja... bunitin o peste

PRÉ-REQUISITOS:
Se você apenas extrair (o link tá aki em baixo) e executá-lo, ele não irá funcionar corretamente. Siga estes passos e seja feliz !
1. Faça o
download aqui2. Extraia o direório 'lightbox' e o script 'raposa.sh'
3. Coloque-os na pasta onde deseja criar a galeria.
4. Execute

A única premissa de funcionamento é esse: O diretório 'lightbox' tem de estar no mesmo diretório que o script raposa.sh.
O diretório lightbox possui dois arquivos auxiliares, um em JavaScript e outro em CSS, para dar um visual imcomparável

Bom proveito!
O link dos arquivos necessários estão aqui
http://www.mediafire.com/?vivjwjrmxf9
#!/bin/bash
#Lista os arquivos de uma pasta e cria uma galeria
# ------ Changelog ---------
# 29 Jun: modificado para JavaScript, nao utilizando mais o CSS (limpeza no codigo)
# 28 Jun: Criacao utilizando CSS + HTML + ShellScript = CGI :D
PAG="galeria.html"
filtrada=$( ls *.gif *.jpg *.png *.ico 2> /dev/null | wc -l )
LISTA="png gif jpg ico"
# --- Removendo os espacos dos nomes
RENOMEAR(){
for BUSCA in $LISTA
do
I=0
BUSCA[I]=${BUSCA}
I=$(echo ${I}+1 | bc)
ls *.${BUSCA} 2> /dev/null | while read ARQ
do
NOVO=$( echo $ARQ | tr ' ' '_' | tr '-' '_')
if [ "$NOVO" != "$ARQ" ]
then
echo "$ARQ -> $NOVO"
mv "$ARQ" "$NOVO"
fi
echo "
<a href=\"$NOVO\" rel=\"lightbox\" title=\"$NOVO\">
<img src=\"$NOVO\" width=\"50\" height=\"50\" border=\"0\"></a>
">> $PAG
done
done
}
#-- Parte Web ---------
INICIO="
<html>
<head>
<style> <!--a:visited{text-decoration:none}//--> </style>
<meta http-equiv="Content-Type" content=\"text/html; charset=iso-8859-1\">
<meta name="author" content="$(whoami)">
<link rel="stylesheet" href="lightbox/lightbox.css" type="text/css" media="screen" />
<script type="text/javascript" src="lightbox/lightbox.js"></script>
</head>
<title> Galeria de Fotos de $(whoami)</title>
<body >
<h1>$(if test "$filtrada" == "0" ; then
echo "Nenhum arquivo encontrado."
elif test "$filtrada" == "1" ; then
echo "<font color="red">1</font> arquivo encontrado."
elif test "$filtrada" > "1" ; then
echo "<font color="red">$filtrada</font> arquivos encontrados."
fi)
</h1>
<h3>$(pwd)</h3>
<DIV ID="dek"></DIV>
"
FECHA="
</body>
</html>
"
# ---- corpo:
echo $INICIO > $PAG
zenity --question --title="ATENCAO" \
--text="Deseja remover os espacos em branco dos arquivos ?" \
&& RENOMEAR | zenity --progress --pulsate --auto-close --auto-kill
echo $FECHA >> $PAG
rm $(seq 0 10) 2> /dev/nullBom, como disse,ele precisa dos outros arquivos pra ficar bunitin...
se vc quer copiar e colar, experimente esse akê
(Só use esse se vc possuir conectividade):
#!/bin/bash
#Lista os arquivos de uma pasta e cria uma galeria
# ------ Changelog ---------
# 29 Jun: modificado para JavaScript, nao utilizando mais o CSS (limpeza no codigo)
# 28 Jun: Criacao utilizando CSS + HTML + ShellScript = CGI :D
# Utilize apenas se houver conectividade!!
PAG="galeria.html"
filtrada=$( ls *.gif *.jpg *.png *.ico 2> /dev/null | wc -l )
LISTA="png gif jpg ico"
# --- Removendo os espacos dos nomes
RENOMEAR(){
for BUSCA in $LISTA
do
I=0
BUSCA[I]=${BUSCA}
I=$(echo ${I}+1 | bc)
ls *.${BUSCA} 2> /dev/null | while read ARQ
do
NOVO=$( echo $ARQ | tr ' ' '_' | tr '-' '_')
if [ "$NOVO" != "$ARQ" ]
then
echo "$ARQ -> $NOVO"
mv "$ARQ" "$NOVO"
fi
echo "
<a href=\"$NOVO\" rel=\"lightbox\" title=\"$NOVO\">
<img src=\"$NOVO\" width=\"50\" height=\"50\" border=\"0\"></a>
">> $PAG
done
done
}
#-- Parte Web ---------
INICIO="
<html>
<head>
<style> <!--a:visited{text-decoration:none}//--> </style>
<meta http-equiv="Content-Type" content=\"text/html; charset=iso-8859-1\">
<meta name="author" content="$(whoami)">
<link rel="stylesheet" href="http://www.dynamicdrive.com/dynamicindex4/lightbox/lightbox.css" type="text/css" media="screen" />
<script type="text/javascript" src="http://www.dynamicdrive.com/dynamicindex4/lightbox/lightbox.js"></script>
</head>
<title> Galeria de Fotos de $(whoami)</title>
<body >
<h1>$(if test "$filtrada" == "0" ; then
echo "Nenhum arquivo encontrado."
elif test "$filtrada" == "1" ; then
echo "<font color="red">1</font> arquivo encontrado."
elif test "$filtrada" > "1" ; then
echo "<font color="red">$filtrada</font> arquivos encontrados."
fi)
</h1>
<h3>$(pwd)</h3>
<DIV ID="dek"></DIV>
"
FECHA="
</body>
</html>
"
# ---- corpo:
echo $INICIO > $PAG
zenity --question --title="ATENCAO" \
--text="Deseja remover os espacos em branco dos arquivos ?" \
&& RENOMEAR | zenity --progress --pulsate --auto-close --auto-kill
echo $FECHA >> $PAG
rm $(seq 0 10) 2> /dev/nullNÃO GARANTO O FUNCIONAMENTO DO SEGUNDO!
Abraços!!