我被困在这里,我真的可以使用你的帮助。这是我的情况。
我期待创建一个可以使用telnet访问unix服务器的批处理脚本。这里unix服务器会询问用户名/密码。在对用户进行身份验证之后,我想在一些特定文件上执行某些操作,例如chown。
以下是我要做的事情:
telnet
open xyz.abc.com
username
password
command 1
command 2
command 3
exit
其中
xyz.abc.com is the unix server where i want to connect.
username and password are the credentials to access this server
command 1,command 2,command 3 are the commands i want to run in the server.
我的问题是我无法使用SSH。 它应该从文件中获取所有数据,而不是提示用户输入数据,并且应该作为自动脚本运行。
答案 0 :(得分:2)
这是我创建的用于telnet到服务器的.bat文件,更改文件权限,然后将文件ftp到我的PC并打开它。希望它会帮助你。变量文件名是因为我每次都登录并移动到相同的目录名。您可以将其更改为提示,以便用户可以输入他们想要CD的位置。如果您有任何疑问,请告诉我。
:: This will telnet to the server, change the permissions,
:: download the file, and then open it from your PC.
:: Add your username, password, servername, and file path to the file.
:: I have not tested the server name with an IP address.
:: Note - telnetcmd.dat and ftpcmd.dat are temp files used to hold commands
@echo off
SET username=
SET password=
SET servername=
SET filepath=
set /p id="Enter the file name: " %=%
echo user %username%> telnetcmd.dat
echo %password%>> telnetcmd.dat
echo cd %filepath%>> telnetcmd.dat
echo SITE chmod 777 %id%>> telnetcmd.dat
echo exit>> telnetcmd.dat
telnet %servername% < telnetcmd.dat
echo user %username%> ftpcmd.dat
echo %password%>> ftpcmd.dat
echo cd %filepath%>> ftpcmd.dat
echo get %id%>> ftpcmd.dat
echo quit>> ftpcmd.dat
ftp -n -s:ftpcmd.dat %servername%
SET mypath=%~dp0
%mypath%%id%
del ftpcmd.dat
del telnetcmd.dat
答案 1 :(得分:0)
结帐expect。以上就是它的设计目标。
Expect是一款Unix自动化和测试工具,由Don Libes编写 用于交互式的Tcl脚本语言的扩展 应用程序,如telnet,ftp,passwd,fsck,rlogin,tip,ssh和 其他。它使用Unix伪终端来包装子进程 透明地,允许任意应用程序的自动化 通过终端访问。