【发布时间】:2020-09-27 20:05:39
【问题描述】:
我试图在由某个字符串分隔的文件中获取行的第二段,它通常会像awk -F ':: My Delimiter ::' '{print $2}' 这样工作,但如果我尝试打印$2,它将打印第二个参数传递给awk 命令所在的函数。有没有另一种方法可以用分隔符分割一行并打印结果的某个部分?
这正是我遇到问题的那一行:
for transaction in $(cat $1)
do
echo "$transaction" | awk -F ':: My Delimiter ::' '{print $2}' >> testLog.data.out
done
注意:分隔符与描述的完全一样。 :: 我的分隔符 ::
【问题讨论】:
-
你能用一些可以重现问题的示例数据来展示你的代码吗?
-
f I try to print $2 it will print the second argument passed onto the function in which the awk command is located你是'{print $2}'还是"{print $2}"? -
听起来你的代码中有一个你调用 awk 的错误。创建并发布一个minimal reproducible example,显示可以重现问题的完整(但最少)代码以及简洁、可测试的示例输入和预期输出,以便我们开始尝试帮助您调试它。