我有一个.patch文件的目录,使用diff生成。
我想使用patch -p1将所有这些修补程序应用到另一个目录。
但补丁只需要一个文件,除非我cat 。
命令是什么将使用xargs或类似的工具应用多个文件。
如果cat有效,为什么不使用它?
要使用find和xargs :
find dirname -name namespec -print0 | xargs -0 patch patchargs
例:
find src/networking -type f -name 'network*.patch' -print0 | xargs -0 patch -p2
假设你正在使用bash / sh / zsh等…
cd /path/to/source for i in /path/to/patches/*.patch; do patch -p1 < $i; done
这实际上工作(在Bash):
shopt -s globstar for file in /path/to/patches/**/*.patch do patch -p1 < "$file" done