sed删除"."之后的所有内容.在文件中使用*命令?

Nov*_*ice 12 python bash sed

我有以下data.txt:

 95 flour.
 47 water.s
 etc..
Run Code Online (Sandbox Code Playgroud)

在此期间之后我需要删除所有内容.在文件中产生这样的东西:

 95 flour
 47 water
 etc..
Run Code Online (Sandbox Code Playgroud)

我已经尝试使用这些sed命令但没有成功,这会产生一个空白文档:

sed "s/'.*//" data.txt > cleaned.txt 
sed 's/\.*//' data.txt > cleaned.txt 
Run Code Online (Sandbox Code Playgroud)

Ada*_*eld 21

要么.使用反斜杠转义以获取文字.,要么使用括号来定义字符类:

sed 's/\..*$//' data.txt > cleaned.txt
sed 's/[.].*$//' data.txt > cleaned.txt
Run Code Online (Sandbox Code Playgroud)

你试过's/\.*//',这是"零或更多的字面点",这与"字面点后跟零或更多的任何东西"不同,即's/\..*//'.我还添加了一个$很好的措施.


MK.*_*MK. 6

这是最简单的:

sed "s/\..*//"
Run Code Online (Sandbox Code Playgroud)

我认为这是最好的方法之一(比纯粹的bash或Python更好).