deepin-terminal: falha ao executar o processo filho [fechado]

1

Eu escrevi um script simples como abaixo para executar o deepin-terminal e passar um comando simples, mas quando executo este script, recebo um erro.

Script:

#!/bin/bash

deepin-terminal -m fullscreen -e "cmatrix | lolcat"

Erro:

Failed to execute child process “cmatrix | lolcat” (No such file or 
directory)

Se eu passar o comando cmatrix , ele funciona, mas não funciona com cmatrix | lolcat

    
por Miladdarren 05.08.2018 / 09:40

1 resposta

1

A opção -e para deepin-terminal , como para a maioria dos emuladores de terminal, recebe um comando simples. Um pipeline não é um comando simples.

O erro vem do terminal tentando executar um comando com o nome literal cmatrix | lolcat (incluindo espaços e símbolo de pipe).

Em vez disso, use

deepin-terminal -m fullscreen -e sh -c "cmatrix | lolcat"

Isso executaria sh com um script in-line, que executa seu pipeline.

    
por 05.08.2018 / 10:24