比较脚本

时间:2012-12-28 11:16:39

标签: sh

我是shell脚本的新手,我需要帮助。我有两个字符串:

Expected Dates: 12/17/2012 12/18/2012 12/19/2012 12/20/2012 12/21/2012 12/22/2012 12/23/2012
Eimx/MDW Dates: 12/17/2012 12/18/2012 12/19/2012 12/20/2012 12/21/2012 12/22/2012

我想比较它们并显示缺失的数据。

我想要一个.sh脚本,我该怎么办?

1 个答案:

答案 0 :(得分:0)

问题根本没有明确定义,但可能类似于:

#!/bin/sh

s1='Expected Dates: 12/17/2012 12/18/2012 12/23/2012'
s2='Eimx/MDW Dates: 12/17/2012 12/18/2012'
s1=${s1#*:}  # Trim the header (or start the loop in awk at i=3 )
s2=${s2#*:}

printf "$s1\n$s2\n" | awk  '
    NR==1 {for( i=1; i<=NF; i++) a[$i]=1 }
    NR==2 {for( i=1; i<=NF; i++) { if( ! a[$i] ) print $i; delete a[$i]; }}
    END{ for( i in a) print i}'