मेरे उपयोगकर्ता द्वारा मेरे आवेदन के मेनू से विकल्प चुनने के बाद मैं एक टर्मिनल स्क्रीन कैसे साफ़ कर सकता हूं?
मेरे उपयोगकर्ता द्वारा मेरे आवेदन के मेनू से विकल्प चुनने के बाद मैं एक टर्मिनल स्क्रीन कैसे साफ़ कर सकता हूं?
जवाबों:
: शेल कमांड चलाएं
: खिड़कियों के नीचे cls
:! लिनक्स और ओएस एक्स के तहत स्पष्ट
:! cls
मेरे उपयोग के मामले के लिए पर्याप्त पर्याप्त है, लेकिन पूछने वाले के मामले के लिए काम नहीं करता है क्योंकि पूछने वाला GHCi का उपयोग नहीं कर रहा है।
यह वह है जिसे आप देख सकते हैं:
एएनएसआई-टर्मिनल: विंडोज संगतता के साथ सरल एएनएसआई टर्मिनल समर्थन
आप इसे हैकेज में पा सकते हैं और उपयोग कर इंस्टॉल कर सकते हैंcabal install ansi-terminal
। इसमें विशेष रूप से स्क्रीन को साफ करने, रंगों को प्रदर्शित करने, कर्सर को हिलाने आदि के लिए कार्य हैं।स्क्रीन को साफ करने के लिए इसका उपयोग करना आसान है: (यह जीएचसीआई के साथ है)
import System.Console.ANSI
clearScreen
एक टर्मिनल पर जो एएनएसआई से बचने के क्रम को समझता है (मेरा मानना है कि हर शब्द यूनिक्स / लिनक्स सिस्टम में है) आप इसे बस इसके साथ कर सकते हैं:
clear = putStr "\ESC[2J"
2
पूरे स्क्रीन को साफ करता है। यदि आप कर्सर को स्क्रीन के अंत में या कर्सर से स्क्रीन की शुरुआत में साफ़ करना चाहते हैं तो आप क्रमशः 0
या उपयोग कर सकते हैं 1
।
हालाँकि मुझे नहीं लगता कि यह विंडोज शेल में काम करता है।
बस Ctrl + L दबाएं (विंडोज पर काम करता है)
यूनिक्स प्रणालियों पर आप कर सकते हैं System.system "clear"
जो सिर्फ कमांड-लाइन उपयोगिता को स्पष्ट करता है। ऐसे समाधान के लिए जो बाहरी साधनों पर निर्भर नहीं करता है, आपको एक पुस्तकालय की आवश्यकता होगी जो विभिन्न टर्मिनल-प्रकारों पर सार करता है जैसे कि उदाहरण के लिए ansi- टर्मिनल ।
विंडोज पर एक त्वरित तरीका होगा
import System.Process
clear :: IO ()
clear = system "cls"
system "clear
।
लिनक्स के तहत (उबंटू कम से कम), वह कोड जो मैं टर्मिनल को साफ करने के लिए उपयोग करता हूं:
import qualified System.Process as SP
clearScreen :: IO ()
clearScreen = do
_ <- SP.system "reset"
return ()