我希望递归地遍历目录结构的文件夹并将我找到的任何 .jpg 复制到另一个目录中。
我想我有错误的想法:
cp -R photos/*.jpg /cpjpg
Run Code Online (Sandbox Code Playgroud)
如何从 Ubuntu 的命令行执行此操作?
Vin*_*vic 12
这会将当前目录及其所有子目录中的所有以 .jpg 或 .jpeg 结尾的文件(也不区分大小写)复制到目录 /cpjpg 中。不复制目录结构。
find . -type f \( -iname "*.jpg" -o -iname "*.jpeg" \) -exec cp '{}' /cpjpg \;
Run Code Online (Sandbox Code Playgroud)
aki*_*ira 10
这保留了目录结构:
rsync -av --include='*.jpg' --include='*/' --exclude='*' SRC DST
Run Code Online (Sandbox Code Playgroud)
这将保留目录结构。
find photos/ -type f \( -iname '*.jpg' -o -iname '*.jpeg' \) -print0 |xargs -0 tar c |(cd /cpjpg ; tar x)
Run Code Online (Sandbox Code Playgroud)