【发布时间】:2021-11-30 00:05:44
【问题描述】:
我正在尝试查找用户 ID 并使用新密码更改现有密码。
示例文件:
$TestDBUser=TestUsr12
$TestDBPass=Rxa97Gtwbp/UcC
现在假设上述组合在一个文件中存在 100 次,我需要更改 TestUsr12 的更新密码
预期输出:
$TestDBUser=TestUsr12
$TestDBPass=Ymw0tiwbplqxc
我曾尝试在扩展搜索模式下使用 \n 使用记事本 ++ 执行此操作,但不知何故它不适用于所有此类列表。 在一个文件中,不同的 id 有多个这样的组合,需要用相应 id 的新组合替换。
【问题讨论】:
-
你为什么使用 shell、unix 和 notepad++ 标签?据我所知,notepad++ 适用于 Windows。您应该阅读有关 regexp 的信息并使用类似将“TestDBUser=.*”替换为“TestDBUser=blablabla”
-
sed -e 's@Rxa97Gtwbp/UcC@Ymw0tiwbplqxc@g' -
嗨,威廉,使用上面的 sed 命令,它将在任何地方用新密码替换现有密码,但是根据创建的新密码,所有用户 id 的密码都不同,以前的密码对于不同的用户 id 是相同的。
-
@Saboteur 我尝试按照 unix 命令 sed '/$TestDBUser=TestUsr12/!b;n;c$TestDBPass=Ymw0tiwbplqxc' 因为我不确定要在记事本++中的正则表达式中使用的确切表达式。