【发布时间】:2015-02-13 16:19:58
【问题描述】:
我在这个批处理文件的前面部分得到了一些帮助,但现在我在处理最终组件时遇到了问题。 我已经尝试了一些没有成功的事情。我尝试将 CRLF 更改为 LF,但什么也没做。我也尝试过用几种方式改写命令,但我仍然没有得到任何结果。以下是我的主要批处理文件。
@echo on
REM delete deauth command file
SET OutFile="C:\temp\Out2.txt"
IF EXIST "%OutFile%" DEL "%OutFile%"
plink -v -ssh *@x.x.x.x -pw PW -m "c:\temp\WirelessDump.txt" > "C:\temp\output.txt"
setlocal
for /f %%a in (C:\temp\output.txt) do >> "Out2.txt" echo wir cli mac-address %%a deauth forced
REM Use commands in out2 to deauth
plink -v -ssh *@x.x.x.x -pw PW -m "c:\temp\Out2.txt"
pause
这句话下面是在Out2 中找到的命令,我认为这给了实际麻烦。行数各不相同,但它们都是具有不同 MAC 的特定命令。
wir cli mac-address xxxx.xxxx.xxxx deauth forced
如果Out2 只有一行,它运行良好,没有问题。但是当有多行时,它会失败并显示错误,指出该行具有无效的自动命令。几乎就像是把它当作一个连续的命令来读取。正如我上面提到的,我从 CRLF 更改为 LF,希望 IOS 会更喜欢它,但失败了。我尝试在命令之间添加额外的行,并且尝试每次从该文件调用登录名。
我希望有一种方法可以定制命令以一次传递所有行,以将其减少到最少的文件。
我有另一个想法,但它有点/非常笨拙。如果有办法将这些 MAC deauth 命令中的每一个输出到单独文件夹(out1、out2、out3)中自己的文件中,并让 BAT 能够运行该文件夹中所有随机生成的文件,这样每个文件都是分离的 plink 会话。
如果我需要更改/添加/详细说明任何内容,请告诉我。提前感谢你们愿意提供帮助的任何事情。我很感激。
编辑: Martin 指出了实际的限制。通过 SSH 接受命令块似乎是对 Cisco 的限制。所以我仍然有同样的问题,我只需要一些帮助来解决这个问题。我在想我上面提到的多文件解决方案可能有一些可能性。但是我太菜鸟了,不知道如何使它起作用。如果我有任何突破,我会更新。感谢您的任何贡献!
【问题讨论】:
标签: batch-file ssh cisco plink