2012-06-08 15 views
12

जावा के माध्यम से, आप एचडीएफएस में एक निश्चित पथ के तहत सभी फाइलों (रिकर्सिवली) को कैसे सूचीबद्ध करते हैं। मैं एपीआई के माध्यम से गया और फाइलसिस्टम.लिस्टफाइल (पथ, बूलियन) देखा लेकिन ऐसा लगता है कि जब मैं इसे प्रारंभ करता हूं तो फ़ाइल सिस्टम के मेरे उदाहरण में यह विधि मौजूद नहीं है।एचडीएफएस: आप फ़ाइलों को बार-बार कैसे सूचीबद्ध करते हैं?

उत्तर

11

आप Hadoop के अपने संस्करण के लिए org.apache.hadoop.fs.FsShell.ls(FileStatus, FileSystem, boolean, boolean) के लिए स्रोत पर देख सकते हैं - यह कहा जाता है जब आप कमांड लाइन

  • 0.20.2 से एक hadoop fs -lsr path प्रदर्शन - लाइन 593
  • 1.0.2 - 590
  • लाइन
+2

"-lsr" को हटा दिया गया है, उपयोग करें: hadoop fs -ls -R पाथ – 15412s

0
[email protected] ~/hadoop 
$ bin/hadoop fs -lsr /user/someone_else/myfiles 

-rw-r--r-- 1 hadoop-user supergroup   0 2013-11-26 02:09 /user/someone_else/myfiles/file1.txt 

-rw-r--r-- 1 hadoop-user supergroup   0 2013-11-26 02:09 /user/someone_else/myfiles/file2.txt 

drwxr-xr-x - hadoop-user supergroup   0 2013-11-26 02:09 /user/someone_else/myfiles/subdir 

-rw-r--r-- 1 hadoop-user supergroup   0 2013-11-26 02:09 /user/someone_else/myfiles/subdir/anotherFile.txt 
5

उपयोग -R बाद में ls कमांड को फ़ाइलों/निर्देशकों की सूची में सूचीबद्ध करने के लिए उपयोग करें। ls कमांड के लिए

hadoop fs -ls -R Path/Of/File 

संभव विशेषताओं

-d हैं: निर्देशिकाएँ सादा फ़ाइलों के रूप में सूचीबद्ध हैं।

-h "के बजाय बाइट्स के एक नंबर एक मानव पठनीय फैशन में फाइलों का आकार फ़ॉर्मेट करता है।

आर" रिकर्सिवली निर्देशिकाओं की सामग्री की सूची।

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

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