O nome do caminho no shell script contém caracteres extras quando o script é executado [closed]

1

Estou trabalhando em um script que automatiza parcialmente o backup de conteúdo de um dispositivo MTP. Antes de continuar, estou tentando verificar se as pastas relevantes podem ser acessadas, adicionando uma linha que abre uma pasta no nemo. Este é o script:

#!/bin/bash

echo "mtp://[usb:[BUS],[DEVICE]]"
echo -n "Enter BUS: "
read BUS
echo -n "Enter DEVICE: "
read DEVICE
nemo /run/user/1000/gvfs/mtp:host=%5Busb%3A$BUS%2C$DEVICE%5D/Internal%20shared%20storage/

A primeira linha "echo" é apenas para referência do usuário.

$ BUS e $ DEVICE são corretamente substituídos pelos valores inseridos, resultando no caminho correto para a raiz do dispositivo MTP, mas a seguinte pasta não é interpretada corretamente, pois recebo a seguinte mensagem de erro:

"Could not find "mtp://[usb:002,036]/Internal%2520shared%2520storage".

Please check the spelling and try again.

[OK]"

De onde vem o "25" duas vezes adicionado e como posso remediar isso para que o script abra o caminho correto no nemo?

    
por Cem S. 06.08.2017 / 11:08

1 resposta

1

A sugestão de Archemar de substituir% 20 por um espaço e usar aspas duplas ao redor da string de caminho resolveu meu problema e resultou na abertura correta da pasta.

    
por 06.08.2017 / 11:50