Para remover o prefixo file://
do URL, você pode usar sed :
echo "file:///home/user/path/file" | sed "s/^file:\/\///g"
O que isso faz:
- Exibe o URL para a saída padrão (para que possa ser modificado com sed)
- Substitui todas as ocorrências de
file://
em qualquer linha que comece comfile://
sem nada. Isso efetivamente removefile://
do URL, deixando apenas/home/user/path/file
Para usar isso em um script, você pode tentar o seguinte:
cat $(echo "file:///home/user/path/file" | sed "s/^file:\/\///g")
Agora, a mensagem de erro é:
cat: /home/user/path/file: No such file or directory
(Por favor, note que se refere ao nome do arquivo correto em vez do URL.)
Seria muito mais limpo armazenar o nome do arquivo convertido em uma variável do shell e usá-lo posteriormente.
MYFILE=$(echo "file:///home/user/path/file" | sed "s/^file:\/\///g")
cat $MYFILE