我经历了几个grep示例,但是看不到如何执行以下操作.
说,我有一行文件
! some test here and number -123.2345 text
Run Code Online (Sandbox Code Playgroud)
我可以使用这条线
grep ! input.txt
Run Code Online (Sandbox Code Playgroud)
但是如何从这一行获得数字(可能是正数或负数)并将其附加到另一个文件的末尾?是否可以将grep应用于grep结果?如果是,那么我可以通过类似的东西获得数字
grep -Eo "[0-9]{1,}|\-[0-9]{1,}"
Run Code Online (Sandbox Code Playgroud)
p/s /我正在使用OS-X
p/p/s /我试图从几个文件中获取数据并放入一个文件中以供以后绘图.
您的命令格式为:
grep ! input.txt | grep -Eo "[0-9]{1,}|\-[0-9]{1,}" >> output
Run Code Online (Sandbox Code Playgroud)
为了grep
从grep
我们使用管道运营商|
这让我们链命令组合在一起.要将此输出附加到文件,我们使用重定向运算符>>
.
但是有一些问题.你写的regexp更好:grep -Eoe '-?[0-9.]+'
这允许十进制并返回单个数而不是两个,如果你想要以!
grep 开头的行^!
更好地避免与包含!
但不以它开头的行匹配.更好:
grep '^!' input | grep -Eoe '-?[0-9.]+' >> output
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
10155 次 |
最近记录: |