【发布时间】:2022-01-05 15:57:06
【问题描述】:
我是 awk 的新手。我知道 -v 表示变量,所以我尝试在 shell 的每个变量中执行它。但我不知道为什么我会收到这个错误。有人能帮我吗?我的代码有问题吗?
awk -v row_no=$row_no -v item=$item -v itemType=$itemType -v quantity=$quantity -v price=$price '{ NR==row_no;
$1=item
$2=itemType
$3=quantity
$4=price
}1' file.txt > tmp.txt && mv tmp.txt file.txt
我得到的错误是:
awk: fatal: cannot open file `-v' for reading (No such file or directory)
【问题讨论】:
-
我无法重现此内容。您能告诉我们您使用的是哪个版本的 awk 以及您在哪个系统上运行它吗?
-
您用
bash标记了您的问题。bashtag info 告诉您“对于有语法或其他错误的 shell 脚本,请在此处发布之前在 shellcheck.net 检查它们” - 请在以后的问题中这样做,这样我们就不必告诉您该工具的此类错误本来可以告诉你的。