除了前5个前导字符,使用sed删除所有字符的sed命令是什么? 我已经尝试过'倒退'(恢复删除),但这不是最优雅的解决方案。
答案 0 :(得分:9)
这可能适合你(GNU sed):
echo '1234567890' | sed 's/.//6g'
12345
或者:
echo '1234567890' | cut -c-5
12345
答案 1 :(得分:3)
尝试这个(在行的开头重复5次'任意'字符并将其保存在第一组中,然后对任何字符进行任意数量的重复,并将匹配的字符串替换为第一组):< / p>
sed 's/^\(.\{5\}\).*/\1/'
或者mouviciel建议的替代方案:
sed 's/^\(.....\).*/\1/'
(只要你想要的第一个字符的数量不会变得太大,它就更具可读性)