【问题标题】:How to extract shared library version from SONAME field?如何从 SONAME 字段中提取共享库版本?
【发布时间】:2020-01-28 15:59:56
【问题描述】:

有一个共享库说,libsample.so & libsample.so.abc.xy (a,b,c,x 和 y 是 0-9),前者有软链接到后者。

如何从 libsample.so 的 SONAME 部分提取“abc.xy”字段?

我尝试过以下命令: $ objdump -p libsample.so | grep SONAME | awk {'打印 $2'} 这打印: libsample.so.abc.xy

但是如何进一步获取“abc.xy”?

【问题讨论】:

    标签: shell awk grep shared-libraries objdump


    【解决方案1】:

    sed

    sed 's/.*\.so.//'
    

    测试:

    kent$  sed 's/.*\.so.//' <<<"foo.so.bar.so.so.we.want.this"
    we.want.this
    

    awk

     awk -F'so[.]' '{print $NF}'
    

    测试:

    kent$  awk -F'so[.]' '{print $NF}' <<<"foo.so.bar.so.so.we.want.this"
    we.want.this
    

    【讨论】:

      猜你喜欢
      • 2015-02-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-05-03
      • 1970-01-01
      • 1970-01-01
      • 2012-09-20
      相关资源
      最近更新 更多