Bash - Não existe tal arquivo ou diretório, mesmo que o diretório exista e os comandos anteriores sejam executados corretamente [duplicados]

0

Estou executando um script muito simples no Macosx Yosemite

#!/bin/bash
makefilePath=$(echo $(pwd)/make.sh | sed 's/ /\ /')
echo $makefilePath
source "$makefilePath"

As primeiras três linhas funcionam como esperado, mas a quarta linha cria um erro de retorno No such file or directory , mesmo que, se eu executar o comando de makefile diretamente no shell copiando-o, ele funcione bem.

Eu não sei qual é o problema. Por favor ajude.

    
por ironstein 07.09.2016 / 11:55

1 resposta

2

Você não escreveu qual é o seu% realPWD, mas eu suponho que ele contém um espaço, então o comando sed irá mangle o nome do arquivo e não representará mais o arquivo original.

O nome do arquivo desconfigurado é interpretado literalmente pela expansão do shell (e com aspas duplas). Observe também que '\' não fará o que você provavelmente deseja.

    
por 07.09.2016 / 12:13

Tags