您可以使用
执行此操作:find -name "*poster.jpg" -exec sh -c 'mv "$0" "${0%/*}/folder.jpg"' '{}' \;
说明
在这里,对于匹配的每个文件名,执行:
sh -c 'mv "$0" "${0%/*}/folder.jpg"' '{}'
其中'{}’是作为参数传递给command_string的文件名:
mv "$0" "${0%/*}/folder.jpg"
所以,最后,$0将有文件名.
最后,${0%/ *} / folder.jpg扩展到旧文件名的路径并添加/folder.jpg.
例
注意我用echo替换了mv
$find -name "*poster.jpg" -exec sh -c 'echo "$0" "${0%/*}/folder.jpg"' '{}' \; ./anotherpath/my-poster.jpg ./anotherpath/folder.jpg ./path/to/file/test-poster.jpg ./path/to/file/folder.jpg ./tuxisthebest/ohyes/path/exm/bold-poster.jpg ./tuxisthebest/ohyes/path/exm/folder.jpg
以上就是
为各位朋友分享的 相关内容。想要了解更多Linux相关知识记得关注公众号“良许Linux”,或扫描下方二维码进行关注,更多 等着你!