2012-11-23 8 views
27

mam uploaded katalog do klastra Hadoop, że jest o „” w nazwie jak «mydir, Name», gdy próbuję usunąć ten katalog za pomocą RMR Hadoop polecenie powłoki następującoJak usunąć katalog z klastra Hadoop, który ma przecinek (,) w nazwie?

hadoop dfs -rmr hdfs://host:port/Navi/MyDir, Name 

Otrzymuję następujące wiadomości rmr: nie można usunąć hdfs: // host: port/Navi/MyDir ,: Brak takiego pliku lub katalogu. rmr: nie można usunąć Nazwa: Brak takiego pliku lub katalogu.

jednak, że z powodzeniem usunięte inne katalogi w tym samym miejscu, przy użyciu tego samego polecenia tj

hadoop dfs -rmr hdfs://host:port/dir_path 

żadnych rozwiązań do usuwania tego rodzaju telefonicznych.

+0

To nie jest przecinek, to jest to znak spacji beind niego. Umieszczenie argumentu w cudzysłowach pomoże. – rsp

+0

yes @ rsp po przecinku było również miejsce, użyłem następującego polecenia, aby pomyślnie usunąć ten katalog "hadoop dfs -rmr hdfs: // host: port/Navi/MyDir \, \ Name" to działa. –

+0

'' 'w linii poleceń unikają przecinka (niepotrzebnego) i spacji. Używanie cudzysłowów ucieknie od wszelkich potrzebnych znaków, oba będą działać. – rsp

Odpowiedz

43

Czy wypróbowałeś "hadoop dfs -rmr hdfs: // host: port/Navi/MyDir \, \ Name"?

+0

Tak, po prostu próbowałem i że pracuje dla mnie, Dzięki Gega :-) –

+17

ta jest przestarzała powinno być "Hadoop fs -rm -r " –

+1

lub krótsze 'HDFS DFS -rm -r ' – Romain

4

Here można znaleźć wszystkie polecenia Hadoop powłoki:

usuwanie: RMR Zastosowanie: hadoop fs -rmr URI [URI …]

rekurencyjne wersję usunięcia.

Przykład:

hadoop fs -rmr /user/hadoop/dir 
hadoop fs -rmr hdfs://nn.example.com/user/hadoop/dir 

Exit Code:

Zwraca 0 w przypadku sukcesu i -1 w przypadku błędu.

39

Albo jeśli nie znać adres URL, można użyć

hadoop fs -rm -r -f /user/the/path/to/your/dir 
+0

masz na myśli Hadoop fs -rmr -f/user/the/path/to/your/dir? – Avinash

+6

"-rmr" jest przestarzałe w Hadoop 2.6.Odpowiedź oznaczająca "-rm -r" jest w porządku. – ffarquet

2

Spróbuj hadoop dfs -rm -r hdfs://host:port/Navi/MyDir\,\ Name teraz

2
hdfs dfs -rm -r /path/to/directory 
2

W hadoop1.0:

hadoop fs -rmr /PATH/ON/HDFS 

W hadoop2. 0:

hdfs dfs -rm -R /PATH/ON/HDFS 

Zastosowanie \ uciec , w ścieżce

Powiązane problemy