如何使用awk中的变量更改CSV字段

时间:2019-04-29 13:03:29

标签: bash awk

我正在编写脚本,以更改csv文件中的某些字段。我在awk中使用变量来更改字段时遇到麻烦。当我不使用输入变量(如:

)时,更改文件没有任何困难
awk 'BEGIN{FS=","; OFS=","} { if ($1 ~ /3/) $2="John"; print}' accounts.csv > accounts.tmp && mv accounts.tmp accounts.csv

这很好用。

但是每当我要求用户输入并在我的代码中使用它时,csv文件将保持不变。例如下面的代码:

awk 'BEGIN{FS=","; OFS=","} { if ($1 ~ /$idInput/) $2="$nameInput"; print}' accounts.csv > accounts.tmp && mv accounts.tmp accounts.csv

我猜是idInput和nameInput变量引起了问题。

0 个答案:

没有答案