我在捕获每行的前6个字符时遇到麻烦。假设我在text.txt中包含以下几行:
this is a sentence
1234567890
string
Run Code Online (Sandbox Code Playgroud)
我想获得前10个字符:
this i
123456
string
Run Code Online (Sandbox Code Playgroud)
我试过跑步 grep -Eo "^[a-zA-Z0-9]*{6}" text.txt
但是grep会在第6个位置循环使用正则表达式,而不是从下一行开始。它最终返回:
this i
s a se
ntence
123456
7890..
Run Code Online (Sandbox Code Playgroud)
我在这里做错了什么?
为什么要使用grep,可以使用简单的cut命令:
cut -c1-6 file
Run Code Online (Sandbox Code Playgroud)
否则,此更复杂的sed也将起作用:
sed 's/^\(.\{6\}\).*$/\1/' file
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5812 次 |
| 最近记录: |