Citando um caminho que contém espaços, no FreeBSD - por que ele não funciona sempre?

2

Eu tenho um diretório no meu servidor FreeBSD cujo conteúdo é criado por usuários do Windows através do Samba. Os nomes de arquivos e caminhos dentro dele, por vezes, contêm espaços, como é comum no mundo do Windows.

Eu apenas tentei apagar alguns arquivos em um subdiretório que havia sido duplicado.

  • rm -v "New folder (1)/*" falhou ao usar aspas duplas simples ("no dir ou file")
  • rm -v New\ folder\ \(1\)/* foi bem sucedido

Eu pensei que os espaços nos caminhos pudessem ser manipulados colocando o caminho entre aspas. Se eu estou copiando / colando o caminho, então eu acho mais fácil adicionar citações do que manualmente para escapar de cada espaço ou outro caractere especial.

O que preciso fazer para que o primeiro exemplo funcione corretamente?

    
por Stilez 27.10.2017 / 15:25

1 resposta

3

Quando você coloca o * entre aspas, ele é tratado como um caractere entre aspas, portanto, ele deve ser colocado fora das aspas, onde será tratado pelo shell.

rm -v "New folder (1)"/*

    
por 27.10.2017 / 15:30