2017-07-30 9 views
6

आईईएक्स (एलिक्सीर के आरईपीएल) के साथ, मैं अपना कमांड इतिहास सहेजने में सक्षम होना चाहता हूं।मैं आईईएक्स इतिहास कैसे बचा सकता हूं?

उदाहरण के लिए:

मैं एक नया आईईएक्स सत्र को खोलने और एक कमांड निष्पादित कर सकते हैं। आदेश को निष्पादित करने के बाद मैं ऊपर तीर दबा सकता हूं और मेरा अंतिम-आदेश पूर्व-जनसंख्या वाला हो सकता है। आईईएक्स बंद करने और फिर से खोलने के बाद, मैं अपने अंतिम आदेशों तक पहुंच प्राप्त करना चाहता हूं।

क्या ऐसा करने का कोई तरीका है?

उत्तर

16

लिए Erlang/OTP 20

यह है निर्मित (https://hexdocs.pm/iex/IEx.html#module-shell-history से)

Erlang/OTP 20 से, यह संभव कुछ झंडे कि सक्षम पारित करके खोल इतिहास पाने के लिए है यह वीएम में है। यह एक प्रति की जरूरत आधार पर किया जाना कर सकते हैं जब आईईएक्स शुरू करने:

iex --erl "-kernel shell_history enabled"

आप बल्कि एक पूरे के रूप में आपके सिस्टम पर इसे सक्षम हैं, तो आप ERL_AFLAGS वातावरण का उपयोग कर सकते चर और कहा कि यह सुनिश्चित कर लें यह आपके टर्मिनल/खोल विन्यास पर तदनुसार सेट है।

लिनक्स [और MacOS] पर:

export ERL_AFLAGS="-kernel shell_history enabled"

विंडोज पर:

set ERL_AFLAGS "-kernel shell_history enabled"

नोट: @ आंद्रेई-सूरा आप MacOS

पर पहले > touch ~/.iex_history करना पड़ सकता है उल्लेख किया

Erlang/OTP 19 और

नीचे का उपयोग कर https://github.com/ferd/erlang-history

> git clone https://github.com/ferd/erlang-history.git 
> cd erlang-history 
> sudo make install # may not need sudo depending on installation 
+8

बस इस बाहर की कोशिश की कोशिश करो और इसे मारने 'Ctrl' से लगता है कि इतिहास कुछ मामले ऐसे हैं आईईएक्स बाहर निकलने में सही ढंग से लिखा नहीं है + 'सी' दो बार, जो कई लोग करते हैं। आईईएक्स को हमेशा 'Ctrl' + 'G'' Q'' एंटर 'के साथ समाप्त करते समय मुझे कोई समस्या नहीं थी, हालांकि आईईएक्स से बाहर निकलने का एक क्लीनर तरीका है। –

+0

मैंने देखा है कि कभी-कभी इसे करना कितना तेज़ होता है। एक प्रकार की फाइल लिखने की दौड़ की स्थिति हो सकती है? – loeschg

+0

हाहा शायद इस पागल कुंजी कॉम्बो को हिट करने में अधिक समय लगता है, इसलिए मुझे समस्या में भाग लेने की संभावना कम है ;-) –

संबंधित मुद्दे