Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/23.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
Linux 加入原始排序文件,在一个文件中包含2个字段,在第二个文件中包含1个字段_Linux - Fatal编程技术网

Linux 加入原始排序文件,在一个文件中包含2个字段,在第二个文件中包含1个字段

Linux 加入原始排序文件,在一个文件中包含2个字段,在第二个文件中包含1个字段,linux,Linux,我需要linux命令的帮助。 我有两个文件StockSort和SalesSort。它们已排序,每个字段有3个字段。我知道如何对第一个文件中的1个字段和第二个文件中的1个字段进行排序。但我无法获得正确的语法来连接第一个文件中的两个字段和第二个文件中的一个字段。我还需要将它保存到一个新文件中。 到目前为止,我有这个命令,但它不起作用。我认为错误在“2,3”部分,我需要合并第一个文件中的两个字段 join -1 2,3 -2 2 StockSort SalesSort >FinalReport

我需要linux命令的帮助。 我有两个文件StockSort和SalesSort。它们已排序,每个字段有3个字段。我知道如何对第一个文件中的1个字段和第二个文件中的1个字段进行排序。但我无法获得正确的语法来连接第一个文件中的两个字段和第二个文件中的一个字段。我还需要将它保存到一个新文件中。 到目前为止,我有这个命令,但它不起作用。我认为错误在“2,3”部分,我需要合并第一个文件中的两个字段

join -1 2,3 -2 2 StockSort SalesSort >FinalReport

StockSort file
3976:diode:350
4105:resistor:750
4250:resistor:500

SalesSort file
3976:120:net
4105:250:chg
5500:100:pde

Output should be like this:
3976:350:120
4105:750:250
4250:500:100
你可以试试

join -t: -o 1.1,1.3,2.2 stocksort salesort 
在哪里

你可以试试

join -t: -o 1.1,1.3,2.2 stocksort salesort 
在哪里

以下是一个awk:

$ awk 'BEGIN{ FS=OFS=":"} 
       FNR==NR {Stock[$1]=$3; next} 
       $1 in Stock{ print $1,Stock[$1],$2}' StockSort SalesSort
以下是一个awk:

$ awk 'BEGIN{ FS=OFS=":"} 
       FNR==NR {Stock[$1]=$3; next} 
       $1 in Stock{ print $1,Stock[$1],$2}' StockSort SalesSort

你能用文件样本和所需输出更新你的帖子吗?@IanKenney用需要由字段连接的表更新了预期输出是什么?@IanKenney updated由于SalesSort的最后一行是
5500:100:pde
,你如何在输出中获得
4250:500:100
的最后一行?第一个文件中未定义
5500
的值。给定这两个输入文件,应该只有两行输出,否?你能用文件样本和所需输出更新你的帖子吗?@IanKenney用需要由字段连接的表更新了预期输出是什么?@IanKenney updated由于SalesSort的最后一行是
5500:100:pde
,你如何在输出中获得最后一行
4250:500:100
?第一个文件中未定义
5500
的值。给定这两个输入文件,应该只有两行输出,不是吗?