![我只想要这句话的一部分。是否可以从头到尾剪切并只得到我想要的输出?](https://linux22.com/image/73260/%E6%88%91%E5%8F%AA%E6%83%B3%E8%A6%81%E8%BF%99%E5%8F%A5%E8%AF%9D%E7%9A%84%E4%B8%80%E9%83%A8%E5%88%86%E3%80%82%E6%98%AF%E5%90%A6%E5%8F%AF%E4%BB%A5%E4%BB%8E%E5%A4%B4%E5%88%B0%E5%B0%BE%E5%89%AA%E5%88%87%E5%B9%B6%E5%8F%AA%E5%BE%97%E5%88%B0%E6%88%91%E6%83%B3%E8%A6%81%E7%9A%84%E8%BE%93%E5%87%BA%EF%BC%9F.png)
我的文件:
<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