2015-07-28 4 views
6

Ich muss herausfinden, ob der Speicherort des Eingabeordners in hadoop existiert oder nicht.Wie finde ich heraus, ob ein Ordner in Hadoop existiert oder nicht?

ich den folgenden Befehl bin mit den gleichen

hadoop fs -test -d <folder Location> 

Die Abfrage wirft keinen Fehler zu machen, aber auch keine Ausgabe. Ich habe es auf korrekten und falschen Standort überprüft. Was ich aus der Dokumentation verstanden habe, dass es bei richtiger Lokalisierung 1 ausgeben soll.

Antwort

8

hdfs dfs -test -d <folder location> gibt nichts aus, wie 0 oder 1. Es geht um den Exit-Status, 0 steht für eine normale Situation, wenn das Verzeichnis existiert. 1 bedeutet ein fehlendes Verzeichnis.

Hier ist ein Beispiel, das Sie es in bash verwenden können:

hdfs dfs -test -d /tmp && echo 'dir exists' || echo 'sorry, no such dir' 
+0

beste funktionierende Lösung so weit gesehen ... –

3

dank @Mikhail Golubtsov. Unter Verwendung des oben genannten Hinweises ist mein endgültiges modifiziertes Shell-Skript

if hadoop fs -test -d $1 ; 
then echo "yeah it's there " 
else 
echo "No its not there." 

fi 
Verwandte Themen