मैं लिनक्स के लिए नया हूं, और डिस्लेक्सिक होने के नाते, कमांड लाइन से एक चुनौती का काम ढूंढता हूं। इस मुद्दे के साथ काम करने के लिए क्या सहायता या सलाह उपलब्ध है?
मैं लिनक्स के लिए नया हूं, और डिस्लेक्सिक होने के नाते, कमांड लाइन से एक चुनौती का काम ढूंढता हूं। इस मुद्दे के साथ काम करने के लिए क्या सहायता या सलाह उपलब्ध है?
जवाबों:
कमांड लाइन के साथ अपने अनुभव को बेहतर बनाने के लिए आप कुछ चीजों की कोशिश कर सकते हैं।
mkdir
इसके बाद उपयोगी cd
)।history
, आप कमांड इतिहास देख सकते हैं और फिर कमांड को फिर से निष्पादित करने के लिए ऐतिहासिक कमांड की संख्या का उपयोग कर सकते हैं (उदाहरण के लिए, # 352 के साथ फिर से करें !352
)। इसे केवल h
त्वरित और आसान पहुंच के लिए उपयोग करें।ls
किसी निर्देशिका की सामग्री को सूचीबद्ध करने के लिए उपयोग करते हैं, उदाहरण के लिए, उपनिर्देशिका नीले रंग में प्रिंट होती है और फ़ाइल नाम सफेद में प्रिंट होते हैं, जिससे दोनों को अलग करना आसान हो जाता है। अन्य उदाहरणों के लिए, लोगों द्वारा साझा किए गए कई निजीकरणों पर एक नज़र डालें। कुछ लोग "जैसा है" को आजमाने लायक हैं। एक अच्छा प्रारंभिक बिंदु लोकप्रिय विस्मयकारी dotfiles भंडार है।!352
बजाय माना जाता है history 352
, पारी?
मैं एक व्यापक उत्तर देने का प्रयास करूंगा। अगर मैंने कुछ छोड़ा है, तो कृपया टिप्पणी करें और मैं इसे जोड़ दूंगा।
टैब पूरा होना आपकी सबसे बड़ी मदद है। दबाने Tabसे जहां तक विशिष्ट पहचान है, वह कमांड को पूरा करेगा। Tabदो बार दबाने पर विकल्पों की सूची मिल जाएगी। यह सुनिश्चित करने के लिए कि आप कौन सा विकल्प चाहते हैं और Tabफिर से दबाने के लिए पर्याप्त कैक्टक्टर्स टाइप करना । यह पथ / फ़ाइल नामों के साथ भी काम करता है।
उदाहरण के लिए, मान लें कि मेरे पास पॉल नाम का एक उपयोगकर्ता है, और उसके पास अपने डाउनलोड फ़ोल्डर में फ़ाइल text123.txt और text124.txt है:
मैं टाइप / एच कर सकता हूं Tabऔर बैश मुझे देगा /home/
। फिर P टाइप करें Tabऔर प्राप्त करें /home/Paul/
। और इस तरह से जारी रखें जब तक मेरे पास पूरी फाइल और रास्ता न हो।
ऑटो-समापन भी जंगली कार्ड स्वीकार करता है *
और ?
। ?
एक एकल चरित्र से मेल खाता है, और *
सभी वर्णों (या कोई नहीं) से मेल खाता है। उपरोक्त उदाहरण का उपयोग करते हुए, मैं टाइप कर सकता हूं:
/h*/P*/Dow*/t*4*
तो Tabमुझे मार देंगे /home/Paul/Downloads/text124.txt
। अगर मुझे यकीन है कि मैं सही फ़ाइल का मिलान कर रहा हूं, तो मैं केवल Enterकमांड को निष्पादित करने के लिए हिट कर सकता हूं और इसे पहले विस्तारित कर सकता हूं ।
कुछ सामान्य निर्देशिका संदर्भ हैं:
~
अपने घर निर्देशिका के लिए।..
मूल निर्देशिका.
वर्तमान निर्देशिका; यदि आप पूरी तरह से सुनिश्चित करना चाहते हैं कि बैश सही निर्देशिका में दिखता है।ऊपर तीर ↑और नीचे तीर ↓कुंजियाँ आपको हाल ही में उपयोग किए गए आदेशों की सूची के माध्यम से नेविगेट करने देती हैं। इतिहास खोज मोड से बचने के लिए Ctrl+ दबाएं G। Alt+ .पिछले कमांड के अंतिम तर्क को दोहराता है।
बैश आपको उपनाम निर्दिष्ट करने की अनुमति देता है। यदि आप पाते हैं कि आप अक्सर उसी तरह से एक कमांड टाइप करते हैं, तो आप कस्टम एलियास को एडिट करके ~/.bashrc
और लाइन्स को इस तरह जोड़ सकते हैं :
alias agi='apt-get install'
alias mkdri='mkdir'
फिर उन्हें सक्रिय करने के लिए पुनः आरंभ करें।
~
नहीं एक हैalias
, यह बजाय है विस्तार से bash
में के रूप में वर्णित में / टिल्ड विस्तार विस्तारman bash
- ~
करने के लिए विस्तारित किया गया है $HOME
, ~+
के लिए $PWD
और ~-
करने के लिए $OLDPWD
उदाहरण के लिए। आप वास्तव में सेट कर सकते हैं जैसे alias ~='cd ~'
और यह जल्दी से घर वापस लौटने के लिए बहुत उपयोगी है, लेकिन यह विस्तार से पूरी तरह से अलग है (और चोट नहीं करता है)।
man bash
एक पूरा खंड है EXPANSION
... आपने पहले से ही कुछ नामांकित विस्तार को कवर कर लिया है।
..
और .
; उदाहरण के लिए, cd ..
वास्तव में पिछले वर्क सेगमेंट को वर्तमान वर्किंग डायरेक्टरी से हटा देता है, न कि ..
सेगमेंट को जोड़ने के बजाय ।
Zsh शेल (या कम से कम संस्करण जो मैं उपयोग कर रहा हूं, ओह- माय-जेडएसएच ) में एक विशेषता है जो आपको सही करती है यदि आप कमांड में छोटे टाइपो बनाते हैं और नाम दर्ज करते हैं:
$ pyhton scirpt.py
zsh: correct 'pyhton' to 'python' [nyae]? y
zsh: correct 'scirpt.py' to 'script.py' [nyae]? y
...
आप इसे अपने में निम्नलिखित पंक्ति के साथ चालू कर सकते हैं .zshrc
:
# Uncomment the following line to enable command auto-correction.
ENABLE_CORRECTION="true"
mr fr- ./ -oe--rvoeorrpne-st
->zsh: automatically correcting to rm -rf / --no-preserve-root
mv file1 file1.old
, क्योंकि यह दूसरे फ़ाइल नाम को पहले सही कर देगा, जिससे यह नॉन-ऑप हो जाएगा।
आप अपने टर्मिनल में खुले डिस्लेक्सिक फ़ॉन्ट का उपयोग करने का प्रयास कर सकते हैं। यह पाठ को पढ़ने में मदद कर सकता है। यह मान रहा है कि आप डिफ़ॉल्ट ubuntu टर्मिनल का उपयोग कर रहे हैं, जो मुझे आशा है कि GNOME टर्मिनल के समान है।
sudo apt install fonts-opendyslexic
।
@ पोम्स्की के उत्तर को पूरा करने के लिए, मैं कुछ बिंदुओं को जोड़ना चाहूंगा:
चीजों को स्वचालित करना सीखें, विशेष रूप से जानें कि for
लूप कैसे काम करते हैं, कैसे काम करते हैं, कैसे read
काम if
करते हैं, क्या हैं [ ]
और क्या हैं [[ ]]
, अनौपचारिक बैश सख्त मोड का उपयोग करें , क्योंकि एक बार एक स्क्रिप्ट वैध है, तो गलतियों को करना आसान नहीं है।
यदि आप कर सकते हैं, बैश-पूरा पैकेज स्थापित करें (संस्करणों के अनुसार विभिन्न नामों के साथ आ सकता है)
खतरनाक परिस्थितियों में स्विच के rm
साथ प्रयोग करें -i
(जैसे sudo
), या शायद स्थापित करें और उपयोग करें rmtrash
(जो कचरे में कचरा डाल देगा)
स्विच के cp
साथ प्रयोग करें -n
, जो कॉपी करते समय मौजूदा फ़ाइलों को अधिलेखित नहीं करेगा। (बेशक, और अधिक उपयोगी जब पुनरावर्ती नकल)
~/.bashrc
फ़ाइल का उपयोग करना सीखें , यह $PS1
आपके लिए चर को अधिक स्पष्ट कर सकता है।
और शायद सबसे कठिन अगर आप युवा हैं:
आप क्या कर रहे हैं, इसके बारे में अत्याधुनिक और सामान्य साधनों को थोड़ा बेहतर जानने की कोशिश करें।
$CXXFLAGS
अपने में सेटिंग करने का प्रयास करें ~/.bashrc
। (उदाहरण के लिए: export CXXFLAGS=" -std=c++17 -fmax-errors=1 -Wall -Wextra -pedantic -Werror "
आपके सी ++ संस्करण के अनुसार, इसलिए मैं ubuntu के लिए सी ++ 11 का अनुमान लगाता हूं), और फिर make main.cpp
आपके विकल्पों को संकलित किया जाएगा। ध्यान दें कि विकल्प का यह सेट बहुत कठोर है: सब कुछ सही और standart एक त्रुटि के रूप में देखा जाएगा और आपको संकलन करने से रोक देगा।"मछली" अनुकूल इंटरैक्टिव खोल का प्रयास करें। रेपो में उपलब्ध है।
मैं BASH का उपयोग करके कमांड लाइन के साथ संघर्ष करता था। मछली सभी अंतिम आदेशों को याद करती है और पूरा होने की पेशकश करती है। sudo apt install मछली फिर bash टाइप में; मछली। यदि आप इसे पसंद करते हैं, तो यह निर्देश दें कि इसे अपना डिफ़ॉल्ट शेल कैसे बनाया जाए। अन्य गोले उपलब्ध हैं; मछली मेरी पसंद है। एक बार जब आप शुरू करते हैं तो आप इसे पसंद कर सकते हैं।
मैंने सीखा कि मैं यूनिक्स इंजीनियर और कई अलग-अलग प्लेटफार्मों (लिनक्स, एआईएक्स और सोलारिस) पर कई वर्षों तक एक कुशल शेल उपयोगकर्ता होने के बाद डिस्लेक्सिक था ।
डिस्लेक्सिया अलग-अलग लोगों को अलग-अलग डिग्री पर प्रभावित करता है, इसलिए यह धारणा कि "हम चीजों को ऑर्डर से बाहर देखते हैं" एक सरलीकरण और निराशा हो सकती है अगर यह आपको उस तरह से प्रभावित नहीं करता है - मैं वास्तव में टर्मिनलों के डिफ़ॉल्ट निश्चित-चौड़ाई वाले फ़ॉन्ट को बेहद पठनीय ( सफेद-पर-काला मेरे लिए अच्छा लगता है)
गोले को नेविगेट करने के लिए बहुत सारे जोड़ो और अनपेक्षित सम्मेलनों के साथ सीखना मुश्किल है , जो अक्सर उन लोगों के लिए सीखना मुश्किल बनाता है जो नियमित पैटर्न के साथ सीधे शब्दों का आनंद लेते हैं।
मैं अब समझता हूं कि अधिकांश डिस्लेक्सिक्स पहले-हाथ के अनुभव से सीखते हैं और याद करते हैं। हम रट्टा सीखने या वर्डी सिद्धांत के भार का उपभोग करने में बहुत गरीब हैं। एक बार जब हम आवेदन द्वारा सिद्धांत को पचा लेते हैं, हालांकि, यह आमतौर पर एक गहरी आंतरिक समझ के साथ तेजी से चिपक जाता है। इसके लिए, शेल के उदाहरणों को खोजने और उन्हें हाथ से टाइप करके समझने और प्रत्येक पंक्ति को समझने पर ध्यान केंद्रित करें। प्रयोग करें, चीजों को तोड़ें, पूरी रात इसे ठीक करें।
समय के साथ आपको अधिक से अधिक कमांड और स्पॉट पैटर्न याद रहेंगे जिस तरह से डेवलपर्स ने अपने प्रोग्राम को लागू किया है जो अगले कमांड पर लागू किया जा सकता है। हालाँकि, सभी कमांड समान तर्क का पालन नहीं करते हैं जब तर्क / पैरामीटर पास करते हैं, तो कमांड को सीखने में थोड़ा समय लगेगा जो समान हैं।
किसी और की तरह, कुछ वर्षों के बाद यह दूसरा स्वभाव बन जाएगा। हालांकि, समय के साथ, आप डिस्लेक्सिक लाभ प्राप्त कर सकते हैं, जहां आप सहजता से जानते हैं कि समाधान कैसे हल करें और पैटर्न को तोड़ने या पैटर्न को तोड़ने की अपनी 6 वीं समझ जैसी क्षमता का उपयोग करके जटिल मूल-कारण विश्लेषण करें।
टैब-पूर्णता और अप की प्रमुख सलाह के अपवाद के साथ, मुझे लगता है कि अधिकांश उत्तर केवल अनुभव को और अधिक भारी बना देंगे। उन पर ध्यान न दें। सरलीकरण कुंजी है
एक उपकरण है, जो एक मजाक और एक अनमोल सहायक के बीच बैठता है।
https://github.com/nvbn/thefuck
आप इस धागे में अन्य सिफारिशों के अतिरिक्त इसे आज़मा सकते हैं। मुख्य विचार यह है कि जब आप कुछ लिखते हैं और अज्ञात आदेश या जो कुछ भी प्राप्त करते हैं, तो यह उपकरण सही होगा और इसे फिर से निष्पादित करेगा।
यह एक चांदी की गोली नहीं है, लेकिन यह कोशिश करने के लायक हो सकता है।