swa*_*jk1 2 unix macos bash copy
我有一个纯文本文件,其中包含数百个文件的名称,这些文件的路径相对于各个子目录中的主目录(如果需要,可以设为绝对路径)。主目录包含多个目录和数千个文件。我需要创建另一个目录来复制列表中的文件,同时在目标中维护它们的目录结构。
例子:
源文件夹:
/home/a/
file1.jpg
file2.jpg
file3.jpg
/home/b/
file4.jpg
file5.jpg
file6.jpg
Run Code Online (Sandbox Code Playgroud)
文件列表:(纯文本,在/home/)
./a/file2.jpg
./b/file5.jpg
Run Code Online (Sandbox Code Playgroud)
预期结果:
/home/dest/a/
file2.jpg
/home/dest/b/
file5.jpg
Run Code Online (Sandbox Code Playgroud)
从stackoverflow上的各种问题尝试了各种修改的cp,但每次都在结果中得到一个扁平的文件夹结构。
使用bash
在OS X终端
请告诉如何做到这一点。
您可以使用rsync
:
rsync --relative --files-from file-list.txt /home /home/dest
Run Code Online (Sandbox Code Playgroud)