Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/batch-file/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-apps-script/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Batch file 如何使用批处理文件复制特定数据?_Batch File_Batch Processing - Fatal编程技术网

Batch file 如何使用批处理文件复制特定数据?

Batch file 如何使用批处理文件复制特定数据?,batch-file,batch-processing,Batch File,Batch Processing,这是数据 mean MP2 rms : 0.287070 m 我只想0.287070 我该怎么做 我尝试了许多命令,但都失败了。如果所有数据的模式都是1位、1点、6位,则可以使用: sed -r 's/.*([0-9]\.[0-9]{6}).*/\1/' file 如果在包含“mean MP2 rms”的行中只需要此图案: 如果您的数据是6个由空格分隔的字段,并且没有奇怪的字符,则可以使用以下方法: @echo off for /f "usebackq tokens=1,

这是数据

mean MP2  rms         :  0.287070 m
我只想
0.287070

我该怎么做


我尝试了许多命令,但都失败了。

如果所有数据的模式都是1位、1点、6位,则可以使用:

sed -r 's/.*([0-9]\.[0-9]{6}).*/\1/' file
如果在包含“mean MP2 rms”的行中只需要此图案:


如果您的数据是6个由空格分隔的字段,并且没有奇怪的字符,则可以使用以下方法:

@echo off
for /f "usebackq tokens=1,2,3,4,5,6 delims= " %%a in ("data.txt") do (
    echo %%e
)
在循环中,每个字段从
%%a
%%f
获取一个字母<代码>%%e是您需要的数据。例如:

C:\batch>get_data.cmd
0.287070
0.387070
0.487070
0.587070

我想你的帽子锁坏了。我只是想解释一下你的答案。sed命令仅适用于Unix/Linux系统。要使用类似于
sed
的Windows命令,请参见
findstr
@DavidRuhmann-FINDSTR无法从行中提取匹配的文本。它只能打印包含匹配项的整行。@dbenham这是真的,但是可以添加一个简单的
for
来完成该部分
for/f“usebackq tokens=5”%%A在(`find或findstr``中)do echo中。%%A
有很多用于Windows的sed实现。例如。
C:\batch>get_data.cmd
0.287070
0.387070
0.487070
0.587070