【问题标题】:Compare 2 columns in 2 files and print the soustraction result比较 2 个文件中的 2 列并打印提取结果
【发布时间】:2014-05-25 20:51:33
【问题描述】:

我正在尝试比较 2 个数据库之间的表空间大小。我已经提取了所需的字段进行比较:

STAT-TBS-DB-SOURCE.lst:(第 1 列:TBS 名称,第 2 列:实际大小)

TBS001 12
TBS002 50
TBS003 20
TBS004 45

STAT-TBS-DBTARGET.lst(第 1 列:TBS 名称,第 2 列:最大大小)

TBS001 10
TBS002 50
TBS003 20
TBS004 40

我需要比较 2 个文件 (f1,f2) 的第二列 (c1,c2),如果是 f2.c2<f1.c2,则打印 increase Tablespace f1.c1 by ( f1.c2 - f2.c2) MB

你对我有什么解决方案?

我尝试使用 awk,但无法获取 f1.c2 的值。

谢谢

【问题讨论】:

  • 仅供参考 What solution have you for me? 在英语中通常被认为是粗鲁的。以后你可能想说Could you please help me solve my problem? 这样的话。
  • 嗨,肯特,谢谢!我的英语不是很好,很抱歉造成误解。

标签: database file awk compare tablespace


【解决方案1】:
kent$  awk 'NR==FNR{a[$1]=$2;next}$1 in a && $2<a[$1]{
       printf "increase Tablespace %s by %d MB\n",$1,(a[$1]-$2)}' f f2 
increase Tablespace TBS001 by 2 MB
increase Tablespace TBS004 by 5 MB

【讨论】:

  • 感谢它在 && $2
猜你喜欢
  • 2017-07-19
  • 1970-01-01
  • 2021-10-11
  • 1970-01-01
  • 2017-10-29
  • 1970-01-01
  • 1970-01-01
  • 2019-11-11
  • 2021-10-02
相关资源
最近更新 更多