有沒有辦法做線緩衝貓?例如,我想觀看一個UART設備,並且我只想在整行時看到它的消息。我可以做一些事情:線緩衝貓
cat --line-buffered /dev/crbif0rb0c0ttyS0
謝謝。
有沒有辦法做線緩衝貓?例如,我想觀看一個UART設備,並且我只想在整行時看到它的消息。我可以做一些事情:線緩衝貓
cat --line-buffered /dev/crbif0rb0c0ttyS0
謝謝。
不,但GNU grep與--line-buffered
可以做到這一點。只需搜索每一行的內容,如'^'
。
您也可以使用bash在這裏你的優勢:
cat /dev/crbif0rb0c0ttyS0 | while read line; do echo $line; done
由於read
命令每次讀取一行時,將執行行緩衝是cat
沒有。
如果您使用這種方法,則不需要'cat'。 –
管它通過在無操作線緩衝模式的Perl:
perl -pe 1 /dev/whatever
我試圖'貓的/ dev/crbif0rb0c0ttyS0 | grep。 - 行緩衝「,但只打印空行。如果我用普通文件替換UART設備,那麼就可以。對此有何想法? –
哦,我試過'cat/dev/crbif0rb0c0ttyS0 | grep^--line-buffered',這個工程!不知道爲什麼... –
這個工程,但你能解釋一下嗎?貓的輸出應該被緩衝,因爲它連接到管道。那麼grep的線程緩衝如何讓cat的緩衝區刷新以便讓grep像線路緩衝一樣運行? – Vassilis