我創建了一個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