फ़ाइल पढ़ने के लिए फ़ाइल नाम और FileSystem module (fs) प्राप्त करने के लिए आप कमांड लाइन तर्कों तक पहुंचने के लिए process.argv
सरणी का उपयोग करना चाहेंगे। उदाहरण के लिए:
// Make sure we got a filename on the command line.
if (process.argv.length < 3) {
console.log('Usage: node ' + process.argv[1] + ' FILENAME');
process.exit(1);
}
// Read the file and print its contents.
var fs = require('fs')
, filename = process.argv[2];
fs.readFile(filename, 'utf8', function(err, data) {
if (err) throw err;
console.log('OK: ' + filename);
console.log(data)
});
कि नीचे के लिए आप process.argv
लंबाई दो, zeroth आइटम "नोड" दुभाषिया और पहले किया जा रहा है की जा रही स्क्रिप्ट उस नोड वर्तमान में चल रहे थे, उसके बाद आइटम आमतौर पर होगा एक छोटे से तोड़ने के लिए कमांड लाइन पर पारित किया गया। एक बार जब आप argv से फ़ाइल नाम खींच लेते हैं तो आप फ़ाइल को पढ़ने के लिए फाइल सिस्टम फ़ंक्शंस का उपयोग कर सकते हैं और जो कुछ भी आप अपनी सामग्री के साथ करना चाहते हैं। नमूना उपयोग इस प्रकार दिखाई देगा:
$ node ./cat.js file.txt
OK: file.txt
This is file.txt!
[संपादित करें] रूप @wtfcoder, का उल्लेख है "fs.readFile()
" पद्धति का उपयोग करके सबसे अच्छा विचार नहीं हो सकता है क्योंकि यह करने के लिए यह उपज से पहले फ़ाइल की संपूर्ण सामग्री बफ़र होगा कॉलबैक फ़ंक्शन। यह बफरिंग संभावित रूप से बहुत सारी मेमोरी का उपयोग कर सकता है, लेकिन अधिक महत्वपूर्ण बात यह है कि यह node.js की मूल विशेषताओं में से एक का लाभ नहीं लेता है - एसिंक्रोनस, इवेंट I/O।
एक बड़ी फ़ाइल (या किसी भी फ़ाइल, वास्तव में) को संसाधित करने के लिए "नोड" तरीका fs.read()
का उपयोग करना होगा और प्रत्येक उपलब्ध खंड को संसाधित करना होगा क्योंकि यह ऑपरेटिंग सिस्टम से उपलब्ध है। हालांकि, फ़ाइल को पढ़ने के लिए आपको फ़ाइल की अपनी (संभवतः) वृद्धिशील पार्सिंग/प्रसंस्करण करने की आवश्यकता होती है और कुछ बफरिंग अनिवार्य हो सकती है।
आप पाते हैं अपने आप को कमांड लाइन पर और अधिक विकल्प जोड़ने, तो आप उपयोग कर सकते हैं [आशावादी] (https://github.com/substack/node-optimist)। – Jess
http://stackoverflow.com/questions/6156501/read-a-file-one-line-at-a-time-in-node-js?rq=1 टेक्स्ट फ़ाइल पढ़ने के लिए एक और तरीका दिखाता है –