Perguntas sobre 'pipe'

Um pipe conecta a saída de um programa à entrada de outro programa. Isso é usado especialmente para implementar o shell | operador.
1
resposta

zsh: a substituição de comando não herda stdin de seu pai

Considere o seguinte comando: seq 5 | grep $(tail -n1) <(seq 9) Ao executá-lo em zsh 1 : tail: error reading 'standard input': Input/output error Agora executando o mesmo em bash , ele gera: 5 OK. Conforme explicado...
17.01.2017 / 18:17
2
respostas

Posso me juntar a um comando?

Acho join bastante útil. Permite juntar o arquivo1 ao arquivo2 nos campos-chave. É possível fazer isso dinamicamente contra os resultados de um comando, como: join -1 1 -2 1 file1 'curl http://example.com?code=$1&fmt=csv' Talvez...
26.07.2016 / 19:39
1
resposta

Como evitar canos quebrados em comandos com cat?

Por que esse comando simples falha usando o shell emacs (eshell)? cat file.txt | wc Eu tenho um arquivo com 10241 linhas. Cada linha tem menos de 50 caracteres. Cerca de 90% das vezes que eu lanço este comando, ele dá o resultado errado,...
17.10.2016 / 11:51
2
respostas

Marque o descritor como terminal para o teste -t

Pode-se testar se um descritor está conectado ao terminal com o teste -t. if [ ! -t 0 ]; then echo "Stdin is not from terminal" fi Tendo um descritor X, apontando para um arquivo ou para um processo (com redirecionamento > (cmd)),...
11.05.2016 / 16:53
2
respostas

evita que vários canais sejam quebrados devido ao comando ausente

Nos scripts de shell, eu geralmente uso vários canais como este: cmd1 | cmd2 | cmd3 Agora, se cmd2 estiver ausente, o canal resultará "quebrado" e cmd3 não receberá nenhuma entrada. Como solução alternativa eu poderia testar expl...
03.04.2016 / 07:26
3
respostas

Como canalizar dados de um comando para outro comando que permite apenas um arquivo como argumento?

Eu tenho alguns dados arbitrários como uma saída de um comando (por exemplo, um fragmento de dados binários colocados usando tail ). Eu quero alimentá-lo para outro comando / programa que permite apenas um arquivo como um argumento (por exempl...
31.01.2016 / 01:27
2
respostas

Extrai o arquivo compactado pelo seu cabeçalho, pois ele é canalizado da stdout (local ou remotamente)?

Estou enviando arquivo compactado com tubulação local ou de um local de rede. E no final do recebimento, gostaria de detectar o tipo de compactação e usar o utilitário de descompactação apropriado (gzip, bzip2, xz..etc) para extraí-lo. Comandos...
03.11.2015 / 03:32
1
resposta

Por que o PIPESTATUS não funciona em pipelines dentro de uma substituição de comando?

Prova abaixo: Bash 4 Prompt> $(echo hello|sed 's/h/m/'|xargs -I{} ls {} 2>/dev/null|sed 's/ /_/') Prompt> for i in ${PIPESTATUS[@]}; do echo $i;done Output> 0 Prompt> echo hello|sed 's/h/m/'|xargs -I{} ls {} 2>/dev/null|sed...
20.08.2014 / 18:43
2
respostas

Como duplicar um fluxo e processar as duas partes de maneira contínua?

Às vezes, quero inserir algo em um pipeline para relatórios ou algum outro uso secundário. Pode ser tão simples quanto wc -l , ou uma besta mais complexa como awk ou até mesmo um script python. Seria bom administrar um pipeline assim: zc...
14.04.2013 / 07:53
1
resposta

erro de pipe quebrado com popen e JS ffi

Estou usando um ffi para o nodejs, que na maior parte não tem nada a ver com essa questão, que é realmente sobre entender melhor os canais, mas oferece algum contexto. function exec(cmd) { var buffer = new Buffer(32); var result = '';...
27.05.2013 / 11:39