什么是sed命令来删除行中的所有字符,除了第5分领头的人,使用SED? 我试着对这个(恢复删除)会“倒退”,但它不是最完美的解决方案。
Answer 1:
这可能会为你工作(GNU SED):
echo '1234567890' | sed 's/.//6g'
12345
要么:
echo '1234567890' | cut -c-5
12345
Answer 2:
尝试这种(需要5次重复“任意”字符的在该行的开头,并保存该第一组中,然后采取任何数量的任意字符的重复,并替换匹配的字符串与第一组):
sed 's/^\(.\{5\}\).*/\1/'
或替代建议的mouviciel:
sed 's/^\(.....\).*/\1/'
(这是更具可读性只要你想不会增长太大第一字符数)
文章来源: sed delete remaining characters in line except first 5