从两个文件shell脚本添加值

时间:2017-08-22 18:43:20

标签: shell unix

我有两个包含以下格式数据的文件。 FILE1.TXT

        abc , 234
        bcd , 457
        xyz , 123

FILE2.TXT

        abc , 23
        bcd , 458

现在,我正在寻找以下内容: -

       abc , 211 ( diff of file1 and file2)
       bcd, -1

sum of file1 values present in file2    =  691 (abc count + bcd count in file 1 )

sum of file1 values present in file2    =  481 (abc count + bcd count in file 2 ) 

我知道使用grep -f我们可以合并这两个文件但是如何做加法和减法我不确定。

任何帮助都会很受欢迎。

问候。

1 个答案:

答案 0 :(得分:0)

默认情况下,join命令将使用第一个字段作为公共密钥加入两个文件。

然后减法可以由shell arithmetic expansion完成。

join -t , File1.txt File2.txt |
while IFS="$IFS," read -r key val1 val2; do
    printf '%s , %s\n' "$key" "$((val1-val2))"
done