需要一些帮助 我的文件有多行,如下所示
'**FSR**+S:KSSSSS+20+14++20120401'FST+S:KSSSSS+2'**FSR**+S:KSSSSS+44+1++20160218'
'**FSR**+S:KSSSSS+20+14++20120401'FST+S:KSSSSS+2'**FSR**+S:KSSSSS+44+1++20160218'
'**FSR**+S:KSSSSS+20+14++20120401'FST+S:KSSSSS+2'**FSR**+S:KSSSSS+44+1++20160218'
'**FSR**+S:KSSSSS+20+14++20120401'
我正在努力获得以 FSR 开头的行中的所有细分 所以结果应该是这样的,每次找到FSR时添加管道,因为它们在行中出现的位置是恒定的。所以我不能在这里使用cut,总之FSR可能会出现在行的开头,中间或末尾
'**FSR**+S:KSSSSS+20+14++20120401' | **FSR**+S:KSSSSS+44+1++20160218'
'**FSR**+S:KSSSSS+20+14++20120401' | **FSR**+S:KSSSSS+44+1++20160218'
'**FSR**+S:KSSSSS+20+14++20120401' | **FSR**+S:KSSSSS+44+1++20160218'
'**FSR**+S:KSSSSS+20+14++20120401'
另外,这是我用perl编写的代码,想是否可以用简单的方式完成
#!的/ usr / bin中/ perl的
use strict;
use Data::Dumper;
my $filename = $ARGV[0];
chomp($filename);
open(FILE,$filename);
my ($FSR);
while(my $data = <FILE>) {
#print $data;
($FSR) = "";
if($data =~ /('FSR.*?)(.*?)(\')/) {
$FSR = "$1,$2";
}
print "$FSR\n";
}
close(FILE);
请帮忙
由于 沙
答案 0 :(得分:0)
编辑:
以下单行似乎可以解决您所描述的问题:
$ sed -i -e 's/FSR/ | FSR/g' YOURFILE
还有更多内容或者您正在寻找的内容吗?