grep agindo estranhamente

3
Grep vem agindo estranhamente em um dos meus sistemas (Ubuntu Desktop - todos os meus outros sistemas são Ubuntu Server), e não consigo entender o porquê. Eu criei um arquivo de controle chamado texto que contém o seguinte texto:

grep
test!!

os seguintes comandos funcionam em todos os meus sistemas, exceto o problema child:

$ grep grep *
text:grep
$ grep 'test!!' *
text:test!!

No meu problema, o filho grep simplesmente trava. Eu comparei .bashrc , .bash_aliases e até / etc / bash_completion , mas não consigo encontrar o problema. Alguma idéia do que poderia estar causando o problema?

    
por JohnB 08.02.2011 / 05:21

3 respostas

7

Na máquina com problemas, no diretório você grep 'something' * há arquivos especiais como soquetes, pipes nomeados (fifos), etc.?

Pelo menos no caso de um pipe nomeado, o grep não obterá um EOF do pipe nomeado até que algo realmente grave um EOF no pipe nomeado.

    
por 08.02.2011 / 10:40
4

Se ele trava, parece que ele está procurando informações de stdin.

Você pode provar que, digitando Control-D (somente uma vez), ele retornará ao shell.

Se isso estiver correto, * não encontrará arquivos.

    
por 08.02.2011 / 05:41
1

Teve um problema semelhante e o culpado foi um dir de rouge chamado '-' que provavelmente estava sendo interpretado como "lido de stdin" em vez de como um nome de diretório

> grep 'something' * 
> grep 'something' f1 f2 f3 - f4 f5  ...
    
por 04.11.2017 / 17:17

Tags