【发布时间】:2014-01-14 18:28:15
【问题描述】:
我试图使用 Plink(putty 命令行)从 VBA 调用一组 Unix 命令,但这些命令没有得到 Executed。我会发布代码,任何更正或建议都会有所帮助。
也欢迎其他想法,我所要做的就是访问 unix 文件更改访问权限并将文件移动到其他文件夹。
请在下面找到代码
Public Sub Chgaccper()
Dim vPath As String
Dim vFile As String
Dim vSubpath As String
Dim vscript As String
Dim fNum As Long
Dim oShell
Set fso = CreateObject("scripting.filesystemobject")
vPath = ThisWorkbook.Path
'Mounting file command for ftp.exe
fNum = FreeFile()
Open vPath & "\Chg.txt" For Output As #1
Print #1, "c:\"
Print #1, "set PATH=" & vPath & ";%PATH% "
Print #1, " "
Print #1, "plink server Name -l uname -pw Password "
Print #1, " "
Print #1, "cd /root/home/temp "
Print #1, " "
Print #1, "chmod 666 *.csv "
Print #1, " "
Print #1, "cd /root/home/temp1 "
Print #1, " "
Print #1, "chmod 666 *.csv "
Print #1, " "
Print #1, "exit "
Print #1, " "
Close #1
vscript = "" & vPath & "\Chg.txt"
If fso.FolderExists("C:\Windows\System32") = False Then
Shell "C:\WINNT\system32\cmd.exe -s:" & vscript & ""
Else
Shell "C:\WINDOWS\system32\cmd.exe -s:" & vscript & ""
End If
SetAttr vPath & "\Chg.txt", vbNormal
Kill vPath & "\Chg.txt"
End Sub
【问题讨论】:
-
你的代码的结果是什么?有没有
Chg.txt,可以显示一下内容吗?当您尝试直接执行脚本时会发生什么?
标签: shell vba unix excel vbscript