我只想要这句话的一部分。是否可以从头到尾剪切并只得到我想要的输出?

我只想要这句话的一部分。是否可以从头到尾剪切并只得到我想要的输出?

我的文件:

<TextBlock x:Key="applicationNameSpectrumAnalyzer" Text="Booting Spectrum Analyzer"></TextBlock>
      <TextBlock x:Key="applicationNamePowerMeter" Text="Booting Power Meter"></TextBlock>
      <TextBlock x:Key="applicationNameAnalogDemod" Text="Booting Analog Demod"></TextBlock>

      <!-- ApplicationHeaderBarView -->
      <sys:String x:Key="applicationHeader">Spectrum</sys:String>

      <!-- BuildDetailsTrayView -->
      <sys:String x:Key="buildVersion">V</sys:String>

      <!-- VitalSignsView -->
      <sys:String x:Key="vitalSignCPU">CPU</sys:String>
      <sys:String x:Key="vitalSignRAM">RAM</sys:String>
      <sys:String x:Key="vitalSignMB">MB</sys:String>

期望的输出:

applicationNameSpectrumAnalyzer Booting Spectrum Analyzer
applicationNamePowerMeter Booting Power Meter
applicationNameAnalogDemod Booting Analog Demod

答案1

为了给您最好的答案,我们需要您提供更多信息。我怀疑您只对带有“TestBlock”标签的行感兴趣。您可以先像这样匹配这些行。

awk -F'"' '/TextBlock/{print $2, $4}' inputfile.txt

这将确保不处理其他行。

答案2

这是 Perl 的方式:

$ perl -lne 'if(/applicationName/){@A=(/"([^"<]+)"/g); print "@A"}' file 
applicationNameSpectrumAnalyzer Booting Spectrum Analyzer
applicationNamePowerMeter Booting Power Meter
applicationNameAnalogDemod Booting Analog Demod

答案3

我想我已经明白了,我只需要命令。我用了:

awk -F '"' '{print $2 " " $4}' test2.txt

相关内容