假设我有一个文本文件(EmployeeDetails.txt)在其中写入内容(所有名称/值都以新行显示),如下所述:

EmployeeName=XYZ
EmployeeBand=D5
EmployeeDesignation=SSE

我需要linux命令来读取这个文件EmployeeDetails.txt并给出EmployeeBand的值。输出应该是
D5

最佳答案

使用grep:如果后面跟EmployeeBand=的内容将被打印。

grep -oP 'EmployeeBand=\K.*' EmployeeDetails.txt

使用awk其中=用作字段分隔符,并打印第二个字段。如果满足搜索条件。
awk -F'=' '/EmployeeBand/{print $2}' EmployeeDetails.txt

使用sed,这里捕获的频带D5()内的一个组,稍后使用\1
sed -r '/EmployeeBand/ s/.*=(.*$)/\1/g' EmployeeDetails.txt

10-06 02:45