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

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

Re: [shell-script] Zipando arquivo: KDE servicemenus + script + zip


From: opa
Subject: Re: [shell-script] Zipando arquivo: KDE servicemenus + script + zip
Date: Wed, 12 May 2004 00:47:25 -0300 hrN

Antes da linha "for infile in $@; do" você deve definir o IFS (Internal Field 
Separator) adequado, vide $@ e "man seu_shell".

Como o default do IFS costuma ser espaço, deve ser exatamente por isso que 
está pegando a primeira palavra, quando existe espaço no nome. Você pode 
confirmar "hexamente" o que há no seu IFS assim:

echo -ne "$IFS"|xxd

Poderá tentar alterá-lo para TAB:
IFS=`echo -e '\t'`

Para NL:
IFS=`echo -ne '\\\n'`
ou
IFS='
'

Provavelmente seu separador adequado deve ser o NL. Mas com é bom saber 
com certeza o que chega no ponto de trabalho, sondar inicialmente, antes
do seu for com:

echo -ne "$@"|xxd

talvez não seja má idéia.

Trocar o:
for infile in $@
por:
echo "$@"|while read infile
também pode ser uma alternativa.

Olhando apenas esse trecho do script, são esses os meus palpites.

Boa sorte!


---------------------------------------------------------------------
>From: "zunixbr" <address@hidden>
>Date: Wed, 12 May 2004 04:00:07 -0000
>
>Eu sou usuario do Kurumin e participante do forum    
>http://www.kurumin.com.br/forum/ e estou tentando implantar uma   
>Estrada de    
>Desktop e um script que permitiriam zipar pastas e/ou arquivos com   
>apenas 1    
>clique.   
>
>Aqui um meio que adota o programa zip, compactador ,incluso   
>no linux,    
>por uma Entrada de Desktop que trabalha em conjunto com um   
>script shell,    
>permitindo compactar arquivos/diretorios com apenas 1 clique com o   
>botao    
>direito do mouse.   
>
>Tanto as entradas quanto o script foram sugeridos por Kevin Krammer  
>
>(address@hidden), com mudanças do participante   
>forum do    
>kurumin, Zip Megabyte. Foi testado com sucesso no Kurumin 3.0   
>(kernel    
>2.4.22-xfs), com kde 3.2.2   
>
>A entrada deve ser salva no    
>diretorio /usr/share/apps/konqueror/servicemenus/ com a   
>extensao .desktop, o    
>nome vc escolhe.   
>
>Entrada:   
>
>#Autor: Kevin Krammer <address@hidden>   
>[Desktop Entry]   
>ServiceTypes=all/all   
>Actions=ZipFiles   
>=80 =A6    
>[Desktop Action ZipFiles]   
>Name=Compactar este(s) arquivo(s)   
>Exec=zipfiles %F   
>Icon=ark.png   
>
>
>
>
>O Script devem ficar na pasta /usr/bin com as devidas permissoes  
>de   
>execucao.   
>
>Script zipfiles:   
>
>#!/bin/bash    
>#Autor: Kevin Krammer (address@hidden)   
>#Altera=80 =A6ções por Zip Megabyte   
>cd $(dirname $1)   
>
>kdialog --dontagain zipinfo:zipmsg --msgbox "Voc=80 =A6ê pode 
>selecionar  
>um   
>ou mais arquivos e/ou diret=80 =A6órios mantendo pressionada a tecla
>
>ctrl,   
>colocando todos num =80 =A6único arquivo zip. Neste caso, nome do  
>primeiro   
>arquivo, em ordem alfab=80 =A6ética de sua sele=80 =A6ção, 
>ser=80 =A6á  
>pr=80 =A6é-definido na   
>caixa de texto."   
>
>$ cat ~/.kde/share/config/zipinfo   
>[Notification Messages]   
>zipmsg=false   
>
>nome=`kdialog --caption "Zipar arquivos" --getsavefilename   
>$1.zip .zip`    
>if ["$nome" = ""]    
>then    
>exit 0    
>fi    
>for infile in $@; do    
>zip -r $nome $(basename $infile) /dev/null 2>&1   
>done;    
>
>Com o clique com o botao direito sobre o(s)   
> arquivo(s)/diretorio(s)   
>desejado:   
>
>
>Agora os problemas...   
>
>1. Parece que o programa zip nao consegue zipar   
>arquivo(s)/diretorio(s) com    
>nomes compostos separados por espaco, exemplo um arquivo .txt   
>chamado 'minhas    
>musicas' nao e compactado com o nome completo, apenas a palavra   
>'minha'    
>aparece na caixa de texto do kdialog . Se um arquivo de nome   
>separado por    
>espacos estiver num diretorio e este tiver nome 'padrao' o  
>programa   
>compacta.    
>
>Seria muito util um script q enviasse o arquivo ja zipado  
>anexado   
>pelo kmail (kmail --attach)   
>
>Participo do forum Kurumin buscando a maior adapta=80 =A6ção do 
>sistema  
>ao   
>usuario leigo, comum,    
>que busca a migracao do windows para linux.   
>
>Seria muito qualquer ajuda   
>
>Obrigado  
>
>
>Marcio   




reply via email to

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