【发布时间】:2017-10-23 12:56:07
【问题描述】:
仅当试运行选项不返回错误时,我才尝试应用大量补丁。
但目前我只能尝试或应用所有补丁:
for i in /home/me/patch/*.patch; do patch -Np1 -f --dry-run < $i; done
因此不应应用生成“hunk FAILED”的补丁。
如果有人有想法。谢谢
【问题讨论】:
仅当试运行选项不返回错误时,我才尝试应用大量补丁。
但目前我只能尝试或应用所有补丁:
for i in /home/me/patch/*.patch; do patch -Np1 -f --dry-run < $i; done
因此不应应用生成“hunk FAILED”的补丁。
如果有人有想法。谢谢
【问题讨论】:
尝试以下 grep 方法:
for i in /home/me/patch/*.patch; do
if ! grep -q 'hunk FAILED' <(patch -Np1 -f --dry-run < $i); then
patch -Np1 -f < $i
fi
done
或验证patch 退出状态(使用-s(--silent) 选项):
for i in /home/me/patch/*.patch; do
if patch -Np1 -f -s --dry-run < $i; then
patch -Np1 -f < $i
fi
done
【讨论】:
if grep,不需要[[]] 或$()
-q 选项,看我的更新
if ! grep