Ich führe folgenden Hadoop-Dateisystem Shell-Befehle aus einem groovigen Skript, um Hive-generierte Dateien zu hdfs zu bewegen.Kein Fehler, aber merkwürdiges Verhalten bei der Ausführung von Hadoop File Sysem-Befehlen von groovy Skript
targetFolderPath="/data/app/2016/06/30/"
srcFile=["/apps/hive/warehouse/customer_input.db/customer/year=2016/month=06/day=30/000000_0.txt.bz2"....]
dst="/data/app/2016/06/30/customer_20160630_201707151297.txt.bz2"
make_dir = " hdfs dfs -mkdir -p ${targetFolderPath} ".execute()
copy_file = " hdfs dfs -cp ${srcFile} ${dst} ".execute()
println (" created folder ${targetFolderPath} and copied file ${srcFile} as ${dst} ")
Dieser Befehl wird in Schleife ausgeführt. Ich bin keine Fehler bekommen, aber starnge Verhalten
Die erste Schleife ist immer korrekt
Im zweiten Schleife der Ordner erstellt wird, aber Datei wird nicht kopiert.
In der dritten Schleife wird weder der Ordner erstellt noch die Datei kopiert.
In den folgenden Schleifen keine Ordner oder eine Datei erstellt wird,
Irgendwann die Kopien Datei hat .__ Kopieren Erweiterung
Was mit dem Aufruf dieser Befehl groovy falsch sein könnte? Ist groovy nicht geeignet um Kommandozeilen auf hdfs auszuführen?