专家们,我有一个文本文件,其中包含一些数学数据,其中有连字符-
,我需要将其替换为0
,以及数字末尾的MB
也需要被删除,这样我就可以得到纯数字。
以下是名为file1
的文件中的示例数据:
数据:
$ cat file1
3708MB 5073MB 5153MB 0MB
- 63097MB 9939MB 53376MB
- 817MB 681MB 271MB
- 2655MB 692MB 2112MB
我尝试过的方法:
$ /bin/sed 's/\r//g; s/-/0/g; s/MB//g' tt4
3708 5073 5153 0
0 63097 9939 53376
0 817 681 271
0 2655 692 2112
或者可以通过
column
命令更好地分栏显示它...$ /bin/sed 's/\r//g; s/-/0/g; s/MB//g' tt4| column -t
3708 5073 5153 0
0 63097 9939 53376
0 817 681 271
0 2655 692 2112
是否有更好的方法来严格确保仅替换连字符-
,而不对前后缀中有任何内容的连字符进行替换,并且同样适用于仅在数字末尾删除MB
。