Não é possível o arquivo cat que possui espaço no nome no linux

3

Acredito que há uma correção simples, mas não é possível depurá-la.

Eu tenho um arquivo chamado " file name with space " Como faço para cat este arquivo do Linux bash?

    
por Maulzey 12.06.2013 / 20:21

5 respostas

7

A colocação de aspas em torno do nome não funciona?

cat "file name with space"
    
por 12.06.2013 / 20:23
6

Uma terceira opção seria

cat 'file name with space'

em que o nome do arquivo pode conter tudo menos o ' .

Se isso acontecer, como file n'ame , substitua cada ' por '\'' :

cat 'file n'\''ame'
    
por 12.06.2013 / 20:36
5

Use o caractere de escape '\' como este

cat file\ name\ with\ space
    
por 12.06.2013 / 20:25
2

Colocar o arquivo entre aspas duplas deve funcionar, por exemplo

cat "file name with space" 
    
por 12.06.2013 / 20:23
-2

Eu encontrei este problema no Linux e no Cygwin. A única coisa que achei que funciona é colocar o nome entre aspas e substituir caracteres não tradicionais por asteriscos. Por exemplo:

tail File.basename.Job With Spaces.log

torna-se ...

tail "File.basename.Job*With*Spaces.log"

Eu tentei escapar dos espaços com barras invertidas, seja desprotegido, protegido com aspas duplas, ou protegido com aspas simples, e em todos os casos, a cauda analisou os nomes nos espaços como se estivessem desprotegidos.

    
por 16.02.2017 / 21:52

Tags