दिलचस्प पोस्ट
मैं सभी कमिट्स के लिए एक गीता रेपो में एक डायरेक्टरी कैसे ले जाऊं? मैं स्क्रिप्ट के भीतर से एक नया जूमला यूजर अकाउंट कैसे बना सकता हूं? Windows पर एक फ़ाइल का मामला बदलें? स्क्रिप्ट घटक के अंदर ssis पैकेज चर को कैसे उपयोग करें कैसे एक Genymotion एंड्रॉइड एम्यूलेटर से स्थानीय होस्ट तक पहुँचने के लिए? नबल विदेशी कुंजी बुरा व्यवहार? घातक चेतावनी प्राप्त की गई: SSLHandshakeException के माध्यम से हैंडशेक_फाइल पी के अनुरोध पेलोड को कम करने के लिए कैसे करें: अजाक्स के दौरान उदाहरण के लिए: डेटाटैबल पृष्ठांकन एसवीजी में पाठ का पृष्ठभूमि रंग जैक्सन के साथ कस्टम ऑब्जेक्ट्स के एक हैशमैप में अवतरण करना आप कैसे यूनिट परीक्षण निजी विधियों कर सकते हैं? फिर भी किसी विधि को ट्रिगर करने के लिए जब एनोमोर को डोम में स्कोप अपडेट जोड़ना होता है? आइफ्रेम में सामग्री सम्मिलित करें स्टेटस बनाम नेमस्पेस पथ का उपयोग करना? सी# अजगर में एक सूची के सभी संभावित संयोजनों को बनाना

आर से बाहर एक साफ आर सत्र से बाहर निकलें और पुनरारंभ करें?

क्या ऐसा कोई तरीका है जो मैं आर के भीतर एक उपनाम बना सकता हूं जो कि q() निष्पादित करेगा और एक स्वच्छ आर सत्र को पुनरारंभ करेगा?

और हां, मैं q() टाइप करने के लिए बहुत आलसी हूं और फिर अक्षर R 🙂

Solutions Collecting From Web of "आर से बाहर एक साफ आर सत्र से बाहर निकलें और पुनरारंभ करें?"

आप कैसे शुरू करते हैं इस पर निर्भर करता है कि इन पंक्तियों में से किसी एक को अपने में रखने का प्रयास करें .Rprofile फ़ाइल:

 makeActiveBinding("refresh", function() { shell("Rgui"); q("no") }, .GlobalEnv) makeActiveBinding("refresh", function() { system("R"); q("no") }, .GlobalEnv) 

फिर आर कंसोल में इसे दर्ज करें:

 refresh 

वर्तमान सत्र को बंद कर देंगे और एक नया शुरू होगा।

यदि आप RStudio में हैं: कमांड / ctrl + shift + F10

आप भी उपयोग कर सकते हैं

 .rs.restartR() 

मुझे पता चला कि .rs.restartR () बस ctrl + shift + F10 दबाकर काम करता है

मुझे खिड़कियों पर एक ही ताज़ा सत्र की कार्यक्षमता की आवश्यकता थी और मुझे कोड का थोड़ा संशोधित संस्करण मिला।

 makeActiveBinding("refresh", function() { shell(paste0("start \"\" \"", R.home(), "/bin/x64/Rgui.exe\"")); q("no") }, .GlobalEnv) 

खिड़कियों पर आपको Rprofile.site फ़ाइल को संशोधित करना Rprofile.site । यह आर के etc निर्देशिका के अंतर्गत है अपने सिस्टम कॉन्फ़िगरेशन के अनुसार bin/x64 के पथ के अंतिम भाग के लिए भी देखें। मुझे उम्मीद है कि यह दूसरों को भी मदद करेगा

 makeActiveBinding("refresh", function() { system(paste0(R.home(),"/bin/i386/R")); q("no") }, .GlobalEnv) 

या –save या –no-save के साथ

 paste0(R.home(),"/bin/i386/R --no-save") 

मुझे लगता है कि यह आपके लिए जरूरी है अगर आपने ताज़ा करने से पहले सेटडब्ल्यू () का उपयोग किया है (यद्यपि न तो यह और न ही मूल संस्करण मेरे लिए काम करता है, क्योंकि आर पुनरारंभ होता है, फिर खुद बंद होता है, एक नई खिड़की खोली नहीं जाती है। अगर कोई टिप्पणी कर सकता है यह, कृपया ऐसा करें)

मैंने निम्नलिखित फ़ंक्शन को लिखा है। याद है! आप इसे केवल एक बार उपयोग कर सकते हैं, फिर आपको आर सत्र पुनरारंभ होने के बाद इसे पुनः लोड करना होगा।

 clc <- function() { rm(list = ls(envir = globalenv()),envir = globalenv()) #clear Vars from global enviroment gc() #grabage colector cat("\014") #clc .rs.restartR() #clear session } 

कभी-कभी पैकेज को अलग करने में भी मदद मिलती है

मार्टिन मॉर्गन के उपयोग के विचार के .Last().Last() ; यह कमांड लाइन विकल्प के उसी सेट के साथ आर को पुनरारंभ करता है, जिसे पहले कहा गया था:

 restart_r <- function(status = 0, debug = TRUE) { if (debug) message("restart_r(): Customizing .Last() to relaunch R ...") assign(".Last", function() { args <- commandArgs() system2(args[1], args = args[-1]) }, envir = globalenv()) if (debug) message("restart_r(): Quitting current R session and starting a new one ...") quit(save = "no", status = status, runLast = TRUE) } 

पुरानी पोस्ट, लेकिन उत्तर में कोई भी काम नहीं करता (मेरे लिए, मैं विंडोज का उपयोग कर रहा हूं, दूसरों का परीक्षण नहीं किया है), इसलिए मैं अपना समाधान जोड़ दूंगा मेरी कुछ शब्दावली यहाँ बंद हो सकती है, लेकिन इसे इस बिंदु को भरना चाहिए:

उत्तर के ऊपर काफी काम नहीं करते

यहां प्रस्तुत अधिकांश उत्तरों में shell या system का उपयोग करना शामिल system जो काफी काम नहीं करता है क्योंकि जब वे एक नया आर कंसोल खोलते हैं और बंद करने के लिए मूल कंसोल को निर्देश देते हैं, तो नया कंसोल पुरानी कंसोल के अनुप्रयोग संदर्भ में चल रहा है। इसका अर्थ है कि नया कंसोल बंद होने तक मूल कंसोल बंद नहीं हो सकता। ऊपर से कुछ उपयोगकर्ता जैसे हेजडेन्डलीचेंट ने रिपोर्ट किया कि मूल कंसोल बंद करने के लिए नया कंसोल बंद करने के लिए मजबूर करता है। जब मैं कोशिश करता हूं, नया कंसोल खुला रहता है, लेकिन पुराने कंसोल एक स्थिर स्थिति में खुला रहता है जब तक कि नया कंसोल बंद नहीं हो जाता।

बुनियादी समस्या shell कह रही shell या system मूल संदर्भ से नया संदर्भ में अनुप्रयोग संदर्भ को परिवर्तित नहीं करता है, और इसलिए मूल प्रक्रिया समाप्त नहीं हो सकती जब तक नया कंसोल बंद नहीं हो जाता।

विकल्प जो मेरे लिए काम करता है

इसके बजाय shell.exec उपयोग shell.exec जो आमतौर पर फ़ाइल प्रकार के आधार पर एक फ़ाइल खोलने के लिए उपयोग किया जाता है। जब। Exe पर प्रयोग किया जाता है, जाहिरा तौर पर, यह निष्पादन योग्य चलाता है। महत्वपूर्ण अंतर, हालांकि, यह है कि सिस्टम अपने स्वयं के अलग संदर्भ में आवेदन को शुरू करता है तो यहाँ कोड है जो मेरे लिए काम करता है:

 makeActiveBinding("restart.R", function() { shell.exec(paste0(R.home(),"/bin/x64/Rgui.exe")); q("no") }, .GlobalEnv) 

आपको आर-आर शुरू करने के लिए उपयोग करने के लिए जो कुछ भी आप उपयोग करते हैं, उससे मिलान करने के लिए फ़ाइल पथ /bin/x64/Rgui.exe को संपादित करना होगा। आप केवल इस रेखा को अपने में .Rprofile फ़ाइल, फिर आप इसे पुनः restart.R करके दर्ज कर सकते हैं। कोड।

अन्य विधियों पर इसका नकारात्मक पक्ष यह है कि आप कमांड लाइन तर्कों --no-save कोई भी नहीं --no-save जैसे कि आप केवल shell साथ, लेकिन कम से कम यह आपको मूल आर प्रक्रिया को बंद कर देगा।