Suponha que temos um comando,
eval-some-language —-path=<filename>
E queremos fazer algo assim:
eval-some-language —-path=“say hello world!
exit 3”
Eu acho que a seguinte solução pode funcionar para um arquivo e se stdin não for usado para sth else:
eval-some-language —-path=“/dev/stdin” <<<“say hello ...”
Funciona com todos os comandos? Quão portátil é? (Mac OS?)
E há outras maneiras de fazer isso?
Atualização: minha solução, a resposta aceita e =() do zsh não funcionam se o arquivo precisar ser executável. :(
Tente isto:
<() irá gerar um descritor de arquivo, vinculado à saída do comando e passá-lo como /dev/fd/xxx. Por exemplo:
Para um pouco mais de informações, consulte a seção "Processar Substituição" em
man bash