Ok, więc zastanawiałem się, w jaki sposób aplikacje konsolowe, takie jak top(1)
dla linuksa, zastępują wiele linii. Chcę wiedzieć, jak to zrobić dla C++ lub C. Wiem, jak nadpisać 1 linię, po prostu wstawiając \ r, ale chciałem wiedzieć, jak to zrobić dla wielu linii, znowu jak na górze lub jeśli jest to nawet możliwe.Zastępowanie konsoli jak top
Odpowiedz
Używają one sekwencji końcowych znaków specjalnych, aby przesuwać kursor po ekranie. Kilka nawet korzysta z bezpośredniego dostępu do bufora ramki, aby traktować ekran jako tablicę znaków, które mogą być bezpośrednio indeksowane.
Biblioteka curses
(lub ncurses
) jest dobrą warstwą abstrakcji.
Tylko uwaga, ale przekleństwa tak naprawdę nie istnieją w systemie Windows: [Czy ncurses są dostępne dla Windows] (http://stackoverflow.com/q/138153/ 16487) –
@ C.Ross: To pytanie dotyczy zastępczych emulatorów terminali obsługujących API Curses. 'curses' jest z pewnością dostępne dla aplikacji w trybie konsoli. –
pdcurses w rzeczywistości jest bardzo użyteczny, nie miałem żadnych problemów z przeniesieniem aplikacji ncurses przy użyciu podstawowych znaków ASCII do pdcurses w systemie Windows. jeśli używasz ncursesw, kompatybilnego z UTF-8 wcielenia ncurses, prawdopodobnie napotkasz o wiele więcej kłopotów. –
Może to nie dotyczyć bezpośrednio pytania, ale tego rodzaju rzeczy zależą od terminala i są zwykle wykonywane za pomocą implementacji curses (najczęściej używaną wersją jest ncurses).
- 1. Jak ZAKTUALIZOWAĆ TOP 400?
- 2. mysql + aktualizacji top n
- 3. Zastępowanie funkcji wtyczki jQuery
- 4. Ekwiwalenty SQL Server TOP
- 5. Zastępowanie domyślnego handlera Meteora
- 6. Wybierz Top n wierszy
- 7. Wersja LINQ TOP PERCENTA
- 8. SELECT TOP błąd
- 9. Serwer Sql TOP - używany?
- 10. Zastępowanie AccessTokenExpireTimeSpan
- 11. Jak wybrać Top 100 wierszy w Oracle?
- 12. Odpowiednik WPF do marży-top?
- 13. Zastępowanie FILE_LOG_PATTERN (jeśli to możliwe na env)
- 14. zastępowanie przykładów funkcji
- 15. Zastępowanie linii nowej sed
- 16. Zastępowanie mcrypt_encrypt z openssl_encrypt
- 17. Zastępowanie strumieni C++
- 18. JavaScript: Zastępowanie XMLHttpRequest.open()
- 19. Zastępowanie cudzysłowów w JavaScript?
- 20. Zastępowanie automatycznie utworzonego ApplicationDbContext
- 21. Zastępowanie dziedziczną własność setter
- 22. Zastępowanie wyjątków Symfony 2?
- 23. Zastępowanie funkcji "jest"
- 24. css: margin-top powoduje scrollbar
- 25. Korzystanie odrębne i TOP jednocześnie
- 26. C# SQL Top jako parametr
- 27. SQL select top częste zapisy
- 28. Zastępowanie CDI dla @ManagedProperty
- 29. Zastępowanie obserwatora właściwości
- 30. Zastępowanie UserControl przez właściwość
To zależy od platformy. Na której platformie jesteś? – Jon
Linux jest prawdopodobnie tym, do czego dążę, chcąc to robić. – csteifel