我有个目录 /home/my_directory/ 包含以下文件和子目录的:
/home/my_directory/
anotherTest.txt doNotCopy.txt my_subdirectory/ subdirectory2/ test.txt
如何复制hdfs上的所有文件和目录 doNotCopy.txt 文件?
doNotCopy.txt
pxiryf3j1#
--copyFromLocal 不提供排除特定文件的方法。您可以执行以下操作:
--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/ 您应该在其中获得所需的文件:
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
1条答案
按热度按时间pxiryf3j1#
--copyFromLocal
不提供排除特定文件的方法。您可以执行以下操作:现在如果你
ls
你的/path/to/HDFS/
您应该在其中获得所需的文件:如果要排除多个文件或目录