gpt4 book ai didi

sed - 通过 sed 在我的硬盘的 `backup` 目录中备份每个替换的文件?

转载 作者:行者123 更新时间:2023-12-04 05:46:42 24 4
gpt4 key购买 nike

我知道你可以指定 -i.bak但我不想处理必须删除 .bak文件,即使它很简单:
find . -name '*.bak' -exec rm {} \;
有什么办法可以审计sed这样默认情况下,我可以随时指定 -i它支持它内联替换的每个文件,例如 /www/backups ?

最佳答案

如果您只想在没有任何备份文件的情况下进行内联替换,只需关闭扩展名:sed -i 's/pat/rep/' .

至于在别处备份,GNU sed说:

This rule is followed: if the extension doesn't contain a *, then it is appended to the end of the current filename as a suffix; if the extension does contain one or more * characters, then each asterisk is replaced with the current filename. This allows you to add a prefix to the backup file, instead of (or in addition to) a suffix, or even to place backup copies of the original files into another directory (provided the directory already exists).



备份“后缀”中出现的星号将替换为文件名(包括路径 - 因此如果您有子文件夹,则需要先在备份目录中创建它们)。
% seq 5 > file
% sed -i'backups/*.bak' s/3/c/ file
% cat file
1
2
c
4
5
% cat backups/file.bak
1
2
3
4
5
%

关于sed - 通过 sed 在我的硬盘的 `backup` 目录中备份每个替换的文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10588253/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com