我运行了一个 perl 脚本使用
perl -p -i.bak -e "..." *.sh dir/*.sh
这创建了每个文件的副本,例如
script.sh
script.sh.bak
我现在想从.bak
文件中恢复。我怎样才能轻松做到这一点?
for file in *.sh.bak dir/*.sh.bak; do cp "$file" "${file//.bak}"; done
或者您可以使用mv
而不是cp
.
find -name '*.bak'|sed 's:.bak$::'|xargs -n 1 -I % cp %.bak %
感谢您的修复。
我一直在使用下面的代码组合来修复 Joomla 站点中的“eval(base64_decode”)。
查找: grep -lr --include=*.php "eval(base64_decode" ./
删除: grep -lr --include=.php "eval(base64_decode" ./ | xargs sed -i.bak 's/eval(base64_decode[^;];/\n/g'
撤消:find -name '*.bak'|sed 's:.bak$::'|xargs -n 1 -I % cp %.bak %