use*_*872 3 regex linux bash command-line sed
我有一个txt文件,我想在特定字符串之前删除x个字符
示例:
52.451878252 foo 845.851878212 foo
98.444854655 foo 458.344854656 foo
Run Code Online (Sandbox Code Playgroud)
我想在字符串'foo'之前删除8个字符,以便得到这个:
52.45 foo 845.66 foo
98.44 foo 458.66 foo
Run Code Online (Sandbox Code Playgroud)
我该如何处理sed命令(或其他)?
谢谢 :)
干得好:
sed -e 's/........foo/ foo/g' file.txt
Run Code Online (Sandbox Code Playgroud)
或等效地:
sed -e 's/.\{8\}foo/ foo/g' file.txt
Run Code Online (Sandbox Code Playgroud)
甚至:
sed -e 's/.\{8\}\(foo\)/ \1/g' file.txt
Run Code Online (Sandbox Code Playgroud)
或者采用不同的方法,为您的样本输出相同的输出:
sed -e 's/[0-9]\{7\} / /g' file.txt
Run Code Online (Sandbox Code Playgroud)