2017-07-31 63 views
0

我是awk的新手。我有一個文件夾中的.sql文件列表,我需要在它們上面運行一個AWK腳本。在Windows上的文件夾中的多個文件上運行awk腳本

我想這對命令行(視窗):

for i in *.sql; do awk -f script.awk $i > $i.out done 

但它無法正常工作。它說:

i was unexpected at this time. 
+1

請更新您的Q和給出一個確切的錯誤信息或其他證據,「這是行不通的。」如果文件名中有空格(值爲'$ i'),那麼您必須使用dbl-quote,即''$ i「',但dbl-quoting變量幾乎總是一個好主意。請閱讀[最小,完整,可驗證示例](http://stackoverflow.com/help/mcve)並改進您的問題。祝您好運。 – shellter

+0

謝謝。我已經做了必要的修改。 儘管如此,文件名中沒有空格,但我嘗試了雙引號但沒有幫助。 – codebee

+1

用你正在使用的任何操作系統標記你的問題,因爲這與awk沒有任何關係,它是關於如何在你的操作系統上的多個文件上對任何命令名X執行命令X. –

回答

0

錯過了「;」:

for i in *.sql; do awk -f script.awk $i > $i.out ; done 
+0

這是說 '我在這個時候是意外的「。 – codebee

相關問題