【发布时间】:2020-05-01 18:19:36
【问题描述】:
我有一个没有分隔符的固定宽度文件。 我想从位置 550-552 中提取具有空白值的固定宽度文件中的行
【问题讨论】:
-
这是否有机会回答您的问题:unix.stackexchange.com/questions/32170/…?
我有一个没有分隔符的固定宽度文件。 我想从位置 550-552 中提取具有空白值的固定宽度文件中的行
【问题讨论】:
与sed:
sed -nE '/^.{549}[[:blank:]]{3}/p' file
[[:blank:]] 字符是空格或制表符,如果要匹配三个空格,请将其更改为空格字符。
【讨论】:
您可以使用egrep(或等效的grep -E):
#first let's build a test file, using seq to make 549 dummy characters (X), then 3 characters, then some more dummy characters (Y):
laptop:~/tmp$ (for n in `seq 1 549`; do echo -n X;done ;echo -n ' '; echo YYYYYYYYYYYYY ) > file
laptop:~/tmp$ (for n in `seq 1 549`; do echo -n X;done ;echo -n 'zzz'; echo YYYYYYYYYYYYY ) >> file
laptop:~/tmp$ (for n in `seq 1 549`; do echo -n X;done ;echo -n ' '; echo YYYYYYYYYYYYY ) >> file
laptop:~/tmp$ (for n in `seq 1 549`; do echo -n X;done ;echo -n '123'; echo YYYYYYYYYYYYY ) >> file
#then do the actual search
laptop:~/tmp$ egrep '.{549} ' file
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX YYYYYYYYYYYYY
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX YYYYYYYYYYYYY
【讨论】: