
Estou tentando criar um diretório que tenha espaço no nome, por exemplo, "user test"
quando eu disparo mkdir -p "user test"
, funciona para mim.
Quando coloco "user test"
a variável mkdir falha, ele cria "user
e test"
separadamente
var="user test"
mkdir -p $var
Eu também tenteimkdir -p "$var"
Alguém pode sugerir onde estou fazendo errado?
Responder1
Você tem que escapar do espaço
mkdir hello\ there
Você também pode encapsular a string, dessa forma não precisa escapar do espaço.
mkdir 'hello there'
Responder2
A resposta de ZN13 está correta. Apenas para fornecer mais detalhes -
Você pode fazer isso usando uma sequência de escape (escape por caractere), como uma barra invertida ().
Exemplo
mkdir Good\ Morning
Aqui, a barra invertida ajuda a escapar do caractere de espaço antes de ‘Manhã’.
Nunca é recomendado usar espaço em nomes de arquivos e diretórios no Linux, pois isso dificulta a cópia de dados e outras tarefas associadas ao uso de nomes de arquivos/diretórios.