如何根据unix文件中的另一个字段更改特定字段



如何根据unix文件中同一记录中的项id将字段值更改为不同的值。

例如:计费费率PI;PAC;4.287301483014;287301483014;5623945596;DBT;短信;短信CET;UC;912990299;862733471;203401725;

假设我想基于同一记录中存在的项目id 203401725将字段8中的值(即SMS到SMSI(更改。我有8000条记录,其中有4000个项目id,203401725,其余的都不一样,我只想根据匹配的项目id 203401 725更新这4000条记录,这不是连续的。如何在unix中对文件执行此操作?

可能最简单的方法是使用awk:

awk -F; 'BEGIN {OFS=FS} $13==203401725 {$8="SMSI"} {print}' Billing charge rate >$$ &&
mv $$ Billing charge rate

最新更新