我创建了一个awk脚本。我想将它的输出保存在一个文件中。但是将awk脚本的输出重定向到一个文件
awk -f a.awk >meta.txt
不工作。有人能告诉我为什么会发生这种情况? 任何人都可以建议哪种命令最适合用特定格式创建文件。如果我为此使用awk,可以吗?
我创建了一个awk脚本。我想将它的输出保存在一个文件中。但是将awk脚本的输出重定向到一个文件
awk -f a.awk >meta.txt
不工作。有人能告诉我为什么会发生这种情况? 任何人都可以建议哪种命令最适合用特定格式创建文件。如果我为此使用awk,可以吗?
如果AWK脚本没有正在处理的文件或从管道接收输入,那么整个脚本应在BEGIN
块。
BEGIN { print "foo"
print "bar"
while (a < c) a+=b
print a, b, c
}
你给awk任何输入?如果它坐在那里什么也不做,你按^ D,它结束了你没有给它STDIN任何东西。你的a.awk脚本是什么样的?
尝试:
cat input.txt | awk -f a.awk > meta.txt
无用的“cat”。 AWK接受输入文件名作为参数。 – 2011-02-28 12:42:05
awk需要一个输入。管一些数据通过命令,e.g:
ls -l | awk -f a.awk > meta.txt
或者:
awk -f a.awk -- somefile.with.input > meta.txt
script -a -c "awk -f a.awk" meta.txt
你能解释一下你的命令是干什么的吗? – Shweta 2011-02-28 09:43:22
脚本会在您的终端上打印所有内容。但是你已经知道你的错误在哪里了。 – 2011-02-28 14:14:45
,当你调用使用-f
awk脚本,确保包含文件名的过程。其常见的错误是离开它
awk -f a.awk [filename] > output.txt
,或者如果你的awk脚本设计采取标准输入,确保你正确管道标准输入到它。例如
some command | awk -f a.awk
将您的代码粘贴到此。运行“awk -f a.awk”时输出的内容 – Zimbabao 2011-02-28 09:05:04