[20190329]grep與管道檔案.txt

lfree發表於2019-03-29

[20190329]grep與管道檔案.txt


--//同事使用grep查詢一個資料夾包含特定字元的檔案.執行馬上hang在哪裡,沒有任何顯示.

--//跟蹤發現實際資料夾裡面包含管道檔案,導致grep該檔案時掛起.


--//重複演示看看.

$ mkfifo foo

$ grep -r break *

--//掛起!!


$ ps -ef |grep brea[k]

oracle   38750 28351  0 16:13 pts/2    00:00:00 grep -r break bbed bbed_old foo gdb python test1 test2 test3 test4


--//程式號38750.使用strace跟蹤發現.


$ strace -f -p 38750

Process 38750 attached - interrupt to quit

open("foo", O_RDONLY


--//在開啟foo檔案時掛起.


$ find . -name "foo" -ls

9209309    0 prw-r--r--   1 oracle   oinstall        0 Mar 29 16:11 ./foo


--//取消執行刪除foo檔案後,一切ok.

$ rm foo

/bin/rm: remove fifo `foo'? y


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/267265/viewspace-2639755/,如需轉載,請註明出處,否則將追究法律責任。

相關文章