मैं Ubuntu 12.10 64 बिट पर एक अजगर उपप्रकार के माध्यम से jshint का उपयोग कर यह त्रुटि मिली।
node.js:464
var cwd = process.cwd();
^
Error: ENOENT, no such file or directory
at Function.resolveArgv0 (node.js:464:23)
at startup (node.js:51:13)
at node.js:555:3
यह इसलिए है क्योंकि आपने किसी निर्देशिका को हटा दिया है या उसके नीचे से स्थानांतरित कर दिया है और वर्तमान निर्देशिका निर्धारित नहीं की जा सकती है।
अगर आपको यह समस्या है तो कैसे बताएं:
कमांड चलाएं cd .
(यदि आपको यह त्रुटि मिलती है तो आपको यह समस्या है)।
el@apollo:~/foo$ cd .
cd: error retrieving current directory: getcwd: cannot access parent
directories: No such file or director
आपने निर्देशिका को अपने वर्तमान डायर में बदलने की कोशिश की, और नहीं कर सका।
त्रुटि को पुन: उत्पन्न करने के लिए कैसे:
jshint इस त्रुटि से प्रभावित है। एक डायरेक्टरी बनाएं foo
, उसमें सीडी डालें, एक फाइल बनाएंmyjavascript.js
cd /home/el
mkdir foo
cd foo
touch myjavascript.js
jshint myjavascript.js
jshint सही ढंग से चलता है, यह कहता है कि कोई त्रुटि नहीं है जो सही है।
एक दूसरा टर्मिनल खोलें, और नीचे से rm -rf
निर्देशिका /home/el/foo
।
rm -rf /home/el/foo
भागो jshint myjavascript.js
अपने पहले टर्मिनल से फिर से और आपको एक त्रुटि मिलती है:
el@apollo:~/foo$ jshint myjavascript.js
node.js:464
var cwd = process.cwd();
^
Error: ENOENT, no such file or directory
at Function.resolveArgv0 (node.js:464:23)
at startup (node.js:51:13)
at node.js:555:3
निर्देशिका चला गया है! और यहां तक कि अगर आप इसे एक ही सामग्री के साथ बदलना चाहते थे, तो इसके पास एक अलग हस्ताक्षर है और टर्मिनल ठीक नहीं हो सकता है, विधि getcwd
को पता नहीं चल सकता है कि वर्तमान निर्देशिका क्या है।
तीन समाधान:
टर्मिनल इस बारे में उलझन में है कि वर्तमान निर्देशिका क्या है क्योंकि इसके चले जाने या इसके हस्ताक्षर बदल गए हैं। इसे ठीक करने के लिए इनमें से एक करें:
cd ..
जब तक आपको त्रुटियां न हों, तब तक कमांड चलाएँ । यह फिर से फाइल सिस्टम के साथ टर्मिनल को सिंक्रोनाइज़ करता है। फिर वापस अपनी निर्देशिका में सीडी। पुनः प्रयास करें। त्रुटि दूर हो जाती है।
su youruser
टर्मिनल में उपयोग करें , पासवर्ड दर्ज करें। यह ताज़ा करता है और आपको उसी निर्देशिका में वापस लाता है।
टर्मिनल को बंद करें और फिर से खोलें जो बासी निर्देशिका हस्ताक्षरों को हटा देता है। या जो भी कार्यक्रम (jshint) या हजारों अन्य कार्यक्रमों के लिए एक nastymail भेजें जो बासी निर्देशिका विज्ञापनों से बर्दाश्त या पुनर्प्राप्त नहीं कर सकता है।
cd [PATH]
किसी मौजूदा पर जाने के लिए अपने शेल में टाइप करें।