如何将参数传递给 PuTTY 命令文件
How to pass argument to PuTTY commands file
我有一个启动 PuTTY 并执行文本文件中列出的命令的批处理文件。我希望能够将参数传递给文本文件,该文件的命令是远程服务器上的 运行。
这是我目前拥有的-
start C:\Users\putty.exe -load "server" -l userID -pw Password -m commands.txt
有没有办法将版本号作为参数传递给 commands.txt
文件?
您必须即时生成 commands.txt
:
set PARAMETER=parameter
echo ./myscript.sh %PARAMETER% > commands.txt
start C:\Users\putty.exe -load "server" -l userID -pw Password -m commands.txt
旁注:要自动执行任务,您应该考虑使用 plink.exe
而不是 putty.exe
:
set PARAMETER=parameter
echo ./myscript.sh %PARAMETER% > commands.txt
plink.exe -load "server" -l userID -pw Password -m commands.txt
Plink 甚至可以在其命令行上接受命令,这让您的任务更加轻松:
plink.exe -load "server" -l userID -pw Password ./myscript.sh parameter
我一直在努力解决这个问题,然后才意识到我们可以通过以下简单的方式轻松实现。
我有一个要使用 Putty 执行的文本文件,它还需要 运行 个时间参数。在这种情况下,我没有使用静态文本文件,而是使用 windows bash 即时生成文件。我的以下用例将在 select
的主机上执行 "Execute.txt"
示例
@ECHO OFF
set prodhost[1]=host1 <br/>
set prodhost[2]=host2<br/>
ECHO Please select the box where you want to perform checkout.<br/>
ECHO 1. host1 <br/>
ECHO 2. host2<br/>
set /p host="Enter Your Option: "
echo echo "Login and switch user was successful" <br/>
echo hostname <br/>
echo sudo su - 'username' ^<^< EOF <br/>
echo <br/>
echo EOF <br/>
)>"Execute.txt" <br/>
"plink.exe" -l %username% -ssh !prodhost[%host%]! -m Execute.txt
底线:使用 bash 即时生成您要执行的脚本并存储到文件中,然后使用 Plink
将其推送
我有一个启动 PuTTY 并执行文本文件中列出的命令的批处理文件。我希望能够将参数传递给文本文件,该文件的命令是远程服务器上的 运行。
这是我目前拥有的-
start C:\Users\putty.exe -load "server" -l userID -pw Password -m commands.txt
有没有办法将版本号作为参数传递给 commands.txt
文件?
您必须即时生成 commands.txt
:
set PARAMETER=parameter
echo ./myscript.sh %PARAMETER% > commands.txt
start C:\Users\putty.exe -load "server" -l userID -pw Password -m commands.txt
旁注:要自动执行任务,您应该考虑使用 plink.exe
而不是 putty.exe
:
set PARAMETER=parameter
echo ./myscript.sh %PARAMETER% > commands.txt
plink.exe -load "server" -l userID -pw Password -m commands.txt
Plink 甚至可以在其命令行上接受命令,这让您的任务更加轻松:
plink.exe -load "server" -l userID -pw Password ./myscript.sh parameter
我一直在努力解决这个问题,然后才意识到我们可以通过以下简单的方式轻松实现。
我有一个要使用 Putty 执行的文本文件,它还需要 运行 个时间参数。在这种情况下,我没有使用静态文本文件,而是使用 windows bash 即时生成文件。我的以下用例将在 select
的主机上执行 "Execute.txt"示例
@ECHO OFF
set prodhost[1]=host1 <br/>
set prodhost[2]=host2<br/>
ECHO Please select the box where you want to perform checkout.<br/>
ECHO 1. host1 <br/>
ECHO 2. host2<br/>
set /p host="Enter Your Option: "
echo echo "Login and switch user was successful" <br/>
echo hostname <br/>
echo sudo su - 'username' ^<^< EOF <br/>
echo <br/>
echo EOF <br/>
)>"Execute.txt" <br/>
"plink.exe" -l %username% -ssh !prodhost[%host%]! -m Execute.txt
底线:使用 bash 即时生成您要执行的脚本并存储到文件中,然后使用 Plink
将其推送