
		msoliver
		
		(usa Debian)
		
		Enviado em 12/07/2016 - 12:32h 
		wellesfreire escreveu:
Amigos  estou com um problema de espaço no nome dos arquivos,  quando executo o comando abaixo todos os arquivos que possuem espaço no nome  é copiado  com 5 bytes . como faço o find gerar um caminho real para copia?
caminho gerado pelo find  : /mnt/1TBWEST/1tbatemp/star wars.m4v
caminho pretendido : /mnt/1TBWEST/1tbatemp/star\ wars.m4v
find  /mnt/1TBWEST/1tbatemp/ -iname '*.m4v' -exec rsync -a --progress {}  /mnt/1TBWEST/sempastas/ \;
Muito obrigado desde já 
Boa tarde wellesfreire.
Para "contornar" o problema, faça o seguinte:
Gere um ARQUIVO.txt com a saída do find, EX:
find  /mnt/1TBWEST/1tbatemp/ -iname '*.m4v'  >> ARQUIVOS_ENCONTRADOS.txt 
Depois . . .
while IFS=$'\n' read -r FILE;do
rsync -a --progress  "${FILE// /\\ }"  /mnt/1TBWEST/sempastas/
done<ARQUIVOS_ENCONTRADOS.txt 
Teoricamente funciona, visto que o 
"${FILE// /\\ }"
Altera 
ESPAÇO para 
\ESPAÇO
Ou. . . 
Gere o ARQUIVO.txt, com os ESPAÇOS ESCAPADOS
find  /mnt/1TBWEST/1tbatemp/ -iname '*.m4v'|sed 's/ /\\ /g'  >> ARQUIVOS_ENCONTRADOS.txt 
while IFS=$'\n' read -r FILE;do
rsync -a --progress  "$FILE"  /mnt/1TBWEST/sempastas/
done<ARQUIVOS_ENCONTRADOS.txt 
É Isso.
att.:
marcelo oliver