如何做一个;sed-“经济对话”;喜欢在Windows上操作吗?

如何做一个;sed-“经济对话”;喜欢在Windows上操作吗?,windows,unix,sed,Windows,Unix,Sed,我有一个55 GB的大文件,其中每行都有一个句子。 我想检查是否有任何行尾有点“.”,如果有,我想在该行的点之前插入一个空格 我喜欢那辆车。 替换为:我喜欢那辆车 如果有点,每行尾随点之前的空格 我没有任何cygwin或unix,我使用的是windows操作系统。有没有一个sed一样的共同点,我可以在这个55GB!档案 我尝试了GetGNUWin32,但无法确定那里的实际命令。安装Perl。草莓Perl可能是Windows的最佳发行版 要实现您在Perl中所说的,应该是这样的: perl -p

我有一个55 GB的大文件,其中每行都有一个句子。 我想检查是否有任何行尾有点“.”,如果有,我想在该行的点之前插入一个空格

我喜欢那辆车。 替换为:我喜欢那辆车

如果有点,每行尾随点之前的空格

我没有任何cygwin或unix,我使用的是windows操作系统。有没有一个sed一样的共同点,我可以在这个55GB!档案


我尝试了GetGNUWin32,但无法确定那里的实际命令。

安装Perl。草莓Perl可能是Windows的最佳发行版

要实现您在Perl中所说的,应该是这样的:

perl -p -i -e's/\.$/ ./' filename

您可以从那里安装
Cygwin
并使用
sed
。在这里我找到了


编辑
很好地回答了您的问题:


(当我在谷歌上搜索时,我总是在
stackoverfoew
前面加前缀。我在谷歌上为你做了同样的事情:
sed on window stackoverflow
,但那是不同的事情)

对于你的用例:

来自PowerShell.exe(随Windows提供)


我搜索了好几个小时,在试图找到我的用例的解决方案时遇到了很多麻烦,所以我希望添加这个答案可以帮助处于相同情况的其他人

对于那些像我一样来到这里了解git filter clean/smudge的人,以下是我最终如何管理它:

文件中:
.gitconfig
(全局)

请注意,此代码段不会更改原始文件(这是针对我的用例的)


额外的搜索词来帮助那些寻找的人:插值,插值

对于谷歌,你也可以添加inurl或站点操作符,@GrijeshChauhani尝试过,但它在Windows7上没有做任何事情。经过一些实验,我发现我不得不使用双引号“而不是单引号”。
(Get-Content file.txt) -Replace '\.$', ' .' | Set-Content file.txt
[filter "replacePassword"]
    required = true
    clean = "PowerShell -Command \"(Get-Content " %f ") -Replace 'this is a password', 'this is NOT a password'\""
    smudge = "PowerShell -Command \"(Get-Content " %f ") -Replace 'this is NOT a password', 'this is a password'\""