我正在尝试使用diff和patch
从同一文件的先前版本恢复文件diff_out=$(diff -u $name $chVer/$name.latest)
patch -u $name $diff_out
其中$ name是我要恢复的文件名,$ chVer是该文件的所有旧版本的文件夹
不幸的是,这不起作用
patch: unrecognized option '---'
patch: Try 'patch --help' for more information.
$ diff_out内容不是由patch命令作为文件读取的,因此我是否需要将diff的内容输出到我用补丁读取的临时文件?我不想这样做,因为我会在补丁完成后立即删除该文件
答案 0 :(得分:0)
尝试$diff_out | patch -u $name
patch
将接受来自stdin
的差异。
答案 1 :(得分:0)
您可以使用process substitution:
来避开临时文件patch -u $name <(diff -u $name $chVer/$name.latest)