我有一个/home/my_directory/
包含以下文件和子目录的目录:
anotherTest.txt doNotCopy.txt my_subdirectory/ subdirectory2/ test.txt
如何复制 HDFS 上除doNotCopy.txt
文件之外的所有文件和目录?
--copyFromLocal
不提供排除特定文件的方法。您可以执行以下操作:
ls /home/my_directory | grep -v 'doNotCopy.txt' | while read -r fileName ; do
eval "hdfs dfs -copyFromLocal -f $fileName /path/to/HDFS/"
done
现在,如果你ls
你/path/to/HDFS/
你应该在那里得到所需的文件:
hdfs dfs -ls -C /path/to/HDFS/
anotherTest.txt my_subdirectory/ subdirectory2/ test.txt
如果要排除多个文件或目录
ls /home/my_directory | grep -v 'doNotCopy.txt\|dirDoNotCopy\|anotherTextFile.txt' | while read -r fileName ; do
eval "hdfs dfs -copyFromLocal -f $fileName /path/to/HDFS/"
done
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句