Como eu fecho stdin em um script de shell?

10

Eu tenho um programa mal comportado que preciso chamar do meu script. Ele sai assim que vê algo no stdin. Existe uma maneira de fechar stdin?

    
por Sundae 18.09.2014 / 14:27

4 respostas

14

Existe uma maneira de fechar stdin?

Closing File Descriptors

  • n<&- Close input file descriptor n.

  • 0<&- or <&- Close stdin.

Fonte Capítulo 20. Redirecionamento de E / S

    
por 18.09.2014 / 14:43
5

Encontrado, você pode fechar o stdin com:

exec 0<&-
    
por 18.09.2014 / 14:37
4

Basta enviar um pipe em um programa sem saída:

: | misbehaving_program
    
por 18.09.2014 / 14:33
3

De acordo com o que você diz, você pode corrigir seu problema simplesmente

pickyProgram < /dev/null
    
por 16.10.2014 / 17:09

Tags