web-dev-qa-db-fra.com

Renommer le répertoire en hdfs

J'ai besoin de renommer un répertoire en hdfs. Quelle est la commande pour cela? 

hadoop fs -mv <src> <dest> 

La commande ci-dessus déplace le dossier src dans le dossier dest. Au lieu de, je souhaite que le dossier src soit renommé en dest.

9
Govind

Renommer n’est pas dans hadoop, mais vous pouvez déplacer, hadoop fs -mv oldname newname

12
Rengasamy

Je pense que vous manquez le point sur la commande mv (linux/hdfs). 

Lorsque la destination existe déjà, s'il s'agit d'un fichier, un message d'erreur mv: 'dest': File exists.
Dans le cas d'un répertoire, la source ira à l'intérieur. Donc, la commande fonctionne de manière acceptable, essayez-la simplement avec une destination inexistante. 

Maintenant, pour résoudre ce problème, vous pouvez utiliser la commande test de hadoop avec le court-circuit OR de linux. 

hadoop fs -test -e dest || hadoop fs -mv src dest 

Si le répertoire n'existe pas, appelez mv. Vous pouvez même aller plus loin avec ce qui suit:

hadoop fs -rmr dest  
hadoop fs -mv src dest  

Celui-ci supprime d'abord le répertoire de destination, puis effectue l'action de déplacement. si ce n'est pas votre intention, utilisez la solution précédente. 

7
blackSmith

Vous pouvez renommer le dossier dans l'environnement HDFS à l'aide de la commande mv.

hadoop fs -mv 'Old folder name with path' ' new folder name with path'

Exemple: j'ai un dossier dans HDFS à l'emplacement /test/abc et je souhaite le renommer en PQR

hadoop fs -mv '/test/abc' '/test/PQR';

Résultats:

 Rename folder in HDFS

2
Vaibhav K