Mac*_*Mac 1 bash sed awk shell-script
我会问你如何解决这个问题:我需要在单词少于 4 个符号的每一行输入 0。
示例输入文件:
30
1
508
A0EA
A0EB
A0EC
A0ED
Run Code Online (Sandbox Code Playgroud)
期望的输出应该是:
0030
0001
0508
A0EA
A0EB
A0EC
A0ED
Run Code Online (Sandbox Code Playgroud)
非常感谢您的支持。
您可以为所有行添加 4 个前导零,然后获取每行的最后 4 个字符:
sed 's/^/0000/; s/^.*\(.\{4\}\)/\1/' < file
Run Code Online (Sandbox Code Playgroud)
或者首先避免截断宽度超过 4 位的数字:
sed 's/^/0000/; s/^.\{1,4\}\(.\{4\}\)/\1/' < file
Run Code Online (Sandbox Code Playgroud)