Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/31.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
如何使用awk命令减少数据?_Awk_Sed - Fatal编程技术网

如何使用awk命令减少数据?

如何使用awk命令减少数据?,awk,sed,Awk,Sed,例如,有一个名为tmp.dat的数据文件,其中的数据为以下形式: x1 x2 x3 x4 x5 x6 x7 . . . . . . . 我的目标是只提取这两列中的x3和x4 我如何使用awk命令来完成缩减工作 我知道使用C/C++和open命令的方法,但这很麻烦。你是说这样 cut -d' ' -f3,4 tmp.dat 试试这个: awk '{print $3,$4}' tmp.dat 琐碎的: $ awk '{print $3,$4}' file 你做过什么研究吗?cu

例如,有一个名为tmp.dat的数据文件,其中的数据为以下形式:

x1 x2 x3 x4 x5 x6 x7

.  .  .  .  .  . .
我的目标是只提取这两列中的x3和x4

我如何使用awk命令来完成缩减工作

我知道使用C/C++和open命令的方法,但这很麻烦。

你是说这样

cut -d' ' -f3,4 tmp.dat
试试这个:

 awk '{print $3,$4}' tmp.dat
琐碎的:

$ awk '{print $3,$4}' file

你做过什么研究吗?

cut
awk
是你最好的选择。下面是您在
bash
中的操作:

while read -ra line; do echo "${line[2]} ${line[3]}"; done < tmp.dat
读取时-ra行;执行回显“${line[2]}${line[3]}”;完成
GNU的代码:

$echo x1 x2 x3 x4 x5 x6 x7 x7 | sed-r的/(\s+\s+{2}(\s+\s+\s+)./\2/' x3 x4
\S+\S+
大约是
$x
(awk)。

我对这个问题投了反对票,因为你可以很容易地在网上找到答案。 $ echo x1 x2 x3 x4 x5 x6 x7|sed -r 's/(\S+\s+){2}(\S+\s+\S+).*/\2/' x3 x4
perl -lane 'print "@F[2,3]"' your_file