escape da tela cifrão

2

Estou tentando executar um comando usando screen , que contém o cifrão, mas o cifrão não passa.

screen -d -m echo \$ > test.txt

test.txt acaba sendo um arquivo vazio ...

    
por bogdansrc 26.07.2013 / 00:42

1 resposta

2

Você está redirecionando a saída de screen . É por isso que test.txt está vazio.

Na verdade, o $ é passado como um argumento para echo . A tela do shell que você está chamando encontra \$ , resultando na string de um caractere $ sendo um argumento de echo . A tela executa echo , que exibe $ na janela da tela. Imediatamente depois disso, o programa retorna e assim a janela se fecha.

Observe que, se você quiser usar construções de shell para o que é executado na janela de tela, será necessário invocar um shell explicitamente.

screen -d -m sh -c 'echo \$ >test.txt'
    
por 26.07.2013 / 02:09