我想像这样将命令输入到 sed 中:
md5sum input.txt | sed 's/^\(....\).*/\1/;q'
Run Code Online (Sandbox Code Playgroud)
这仅通过输出校验和的前 4 个字符来工作。但是,我想输出前 4 个字符,但也有一个 x 代替所有其他字符(编辑信息)。我现在很失落。
例如,这是 md5sum 命令输出:
35c9581c469c366e286be708a9d9f939 input.txt
Run Code Online (Sandbox Code Playgroud)
这是我正在运行的命令行:
md5sum input.txt | sed -f script.sed
Run Code Online (Sandbox Code Playgroud)
我想让 md5sum 的输出看起来像这样:
35c9xxxxxxxxxxxxxxxxxxxxxxxxxxxx input.txt
Run Code Online (Sandbox Code Playgroud)
目前,我的 .sed 脚本包含此内容,它会编辑除前 4 个字符之外的所有内容:
s/./x/5g
Run Code Online (Sandbox Code Playgroud)
当它看到空格“
”时,我需要让它停止这样做。有什么想法吗?