我正在使用hdfs find工具将超过一定时间的文件归档到另一个目录中。稍后我将压缩此目录。注意,我想保持目录结构,因此我必须执行mkdir和move,而不是简单的move。
下面是命令在我的bash脚本中的运行方式:
hadoop jar $jar_location $find_tool -find hdfs://${inputDirs[$x]} -mtime +$days -type f | cut -c 20- | xargs -I % hdfs hdfs dfs -mkdir -p /archiveData/tmp/$DATE`dirname %` && hdfs dfs -mv % /archiveData/tmp/$DATE`dirname %`
我正在尝试从inputdirs中给定的文件夹集中查找超过一定时间的文件。我收到一份文件,说:
/user/abc/file1.txt
然后我将上述内容作为输入传递给xargs。然后我想创建一个目录 /archiveData/tmp/$DATE/user/
然后移动 file1.txt
在它下面。
移动失败,错误如下:
mv:%':没有这样的文件或目录 它创建一个目录作为
/archiveData/tmp/$DATE.而不是
/archiveData/tmp/$DATE/user/`
暂无答案!
目前还没有任何答案,快来回答吧!