简体   繁体   English

使用VBA运行脚本时出现awk错误

[英]awk error while running script using VBA

I have a bash script which works ok when I run it normally (using cygwin window). 我有一个bash脚本,当我正常运行它时可以正常运行(使用cygwin窗口)。 The code below: 下面的代码:

B=$2 #(ie. B="50602_15:56:31_15:56:11_15:56:21")

for line in ${B//;/ } ;
do  
     TENT=`echo ${line} | awk '{split($0,numbers,"_"); print numbers[1]}'`"_sim_fills.txt"
done

Now I am trying to run this script using vba in excel: 现在,我试图在excel中使用vba运行此脚本:

Public Sub test()
    Dim cmd As String
    Dim ret As Double
    Dim WshShell As Object
    Dim plink_object As Object

    ' Run Linux Commands
    Set WshShell = CreateObject("WScript.Shell")
    On Error Resume Next
    Set plink_object = WshShell.Run("C:\cygwin\bin\mintty.exe fills_new.sh 66 ""50602_15:56:31_15:56:11_15:56:21;50602_15:57:07_15:56:47_15:56:57""", 1)
    On Error GoTo 0
End Sub

I got an error: " awk: command not found ". 我收到一个错误:“ awk: command not found ”。 Any ideas? 有任何想法吗?

As @BroSlow suggested I used full path to awk and it works ok. 正如@BroSlow所建议的那样,我使用了完整路径来访问awk,它可以正常工作。

B=$2 #(ie. B="50602_15:56:31_15:56:11_15:56:21")

for line in ${B//;/ } ;
do  
     TENT=`echo ${line} | "/cygdrive/c/cygwin/bin/awk" '{split($0,numbers,"_"); print numbers[1]}'`"_sim_fills.txt"
done

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM