我想輸出的東西到終端窗口,然後只清除它的一部分(如前半部分或季度等),而不是其餘部分。有什麼辦法可以做到這一點?我正在使用系統(「清除」),但清除了所有內容。我寧願不使用ncurses。任何幫助表示讚賞。在C++ unix中清除終端屏幕的一部分?
-1
A
回答
3
3
如果你計算出你的終端的功能是什麼,你可以簡單地用cout將它們寫入stdout。
如果您不確定從哪裏開始,可以嘗試如下所示:在提示符下鍵入man terminfo
,您可能會收到一個終端功能列表。試試tput
看看哪些工作。然後找出你需要打印的代碼的東西,如:
% tput el | od -t x1
0000000 1b 5b 4b
0000003
發送這些字節到我的終端問題「clr_eol」(「厄爾尼諾」),它會清除該行的末尾。弄清楚如何在終端上移動光標,如何清除線條,然後就完成了。
當您使用gnome-terminal時,您可以這樣做來擦除前3行:將光標移動到主頁,擦除到行尾,向下移動,擦除到行尾,向下移動,擦除到行結束。
找出你需要打印的內容:
% (tput home ; tput el ; tput cud1 ; tput el ; tput cud1 ; tput el ; tput cud1 ; tput el ; tput cud1 ; tput el) | od -t x1
0000000 1b 5b 48 1b 5b 4b 0a 1b 5b 4b 0a 1b 5b 4b 0a 1b
0000020 5b 4b 0a 1b 5b 4b
0000026
發送的字節(1B 5B 48等)到標準輸出(與COUT)會做的伎倆從C++。
使用ncurses會更加便攜,如果你不想使用它,你可能會發現你最終會重新實現它。
0
有兩個VT100轉義序列用於分別從光標和上/下到屏幕的頂部/底部進行清除。
相關問題
- 1. 清除終端屏幕
- 2. 清除終端屏幕?
- 3. 只清除Python中的部分屏幕
- 4. 清除屏幕C
- 5. 清除屏幕在C的特定部分++
- 6. 如何使用Perl清除終端中的屏幕?
- 7. 運行mysql時清除unix終端
- 8. 清除終端屏幕在命令行鏢應用
- 9. linux nasm程序集清除屏幕在終端
- 10. 在C++/XCode中清除屏幕
- 11. 在C++中清除屏幕命令
- 12. C++程序清除屏幕
- 13. 在使用屏幕命令水平分割終端之後在unix的另一個終端顯示輸出
- 14. 在IPython中清除屏幕
- 15. 在OpenGL中清除屏幕
- 16. 在Android中清除屏幕
- 17. 在GLUT,C++的按鍵清除屏幕
- 18. 清除屏幕
- 19. OpenGL:如何只清除屏幕的一部分?
- 20. 如何只清除屏幕的一部分?
- 21. 如何在C中清除屏幕區域或重繪屏幕#
- 22. 清除屏幕
- 23. 跨平臺Ruby方法來清除終端屏幕
- 24. 如何使用代碼塊清除mac osx上的終端屏幕C++?
- 25. 如何在新行打印後清除Rust中的終端屏幕?
- 26. 如何拆分屏幕Emacs和終端
- 27. Java清除屏幕
- 28. localStorage清除屏幕
- 29. 清除Python中屏幕
- 30. 在Xcode清除屏幕
什麼是您的終端? –
只是使用Ubuntu的,所以無論終端在那裏 – Sterling
如果沒有其他的工作,打印100次「\ n」,並重新打印什麼不需要更改 –