Eu tenho isso para funcionar, no Debian Gnu / Linux:
#!/bin/sh -x
/bin/echo "Drag folder into Terminal and hit return ->"
read folderLocation
eval "cp -R -t '/home/my/Desktop' $folderLocation"
Eu abandonei o caminho para ler (talvez você não precise fazer isso (a leitura é uma parte do bash e não é possível encontrá-lo em /usr/bin
ou /bin
)
Alterações importantes estão na última linha:
-
A opção
- -t seguida pelo diretório de destino torna o cp mais robusto.
- eval é necessário devido a cotações colocadas em torno do valor de retorno por leitura.
Por que você obtém '' (string vazia da leitura). Eu estou supondo que é porque o arrastar e soltar não está funcionando, isso não é um recurso do shell, mas do terminal e gerenciador de arquivos. Qual programa de terminal você está usando?