gpt4 book ai didi

linux - 使用 shell 打开 telnet 并传递命令

转载 作者:太空宇宙 更新时间:2023-11-04 09:22:23 24 4
gpt4 key购买 nike

我是 linux 和 shell 脚本的新手。我想连接到本地主机并与之交互。

 #! /bin/bash
(exec /opt/scripts/run_server.sh)

当我执行这个 bash 脚本时,它开始监听一个端口。

Listening on port xxxxx

现在我想发出这个命令“telnet localhost xxxxx”我试过这样的事情:

#! /bin/bash
(exec /opt/opencog/scripts/run_server.sh)&&
telnet localhost xxxxx

它仍在监听端口。但我认为第二个命令没有运行。我希望另一个窗口显示它正在像这样连接。

vishnu@xps15:~$ telnet localhost xxxx
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
server>

我将它们作为脚本执行的原因是,我需要在服务器中自动执行某些过程,方法是发出某些命令,例如“scm”、“parse”等......

vishnu@xps15:~$ telnet localhost xxxx
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
server>scm
Entering scheme shell; use ^D or a single . on a line by itself to exit.
guile> (parse "i eat apple")

我有很多文字要来了。手动我不能为每个句子发出这个解析命令。所以我想自动化。所以我需要编写一个脚本来连接到服务器并进行交互。

任何指南。最后如何与这个 guile shell 交互/发送命令?

最佳答案

以相同或不同用户身份登录 Linux 服务器并运行某些命令或 .sh 脚本(对于提交后 Hook 或 cron 作业非常有用)的一种方法是使用名为 sshpass 的程序,例如 cron 作业命令或 svn 提交后 Hook 将如下所示:

/usr/bin/sshpass -p 'password' /usr/bin/ssh 
-o StrictHostKeyChecking=no -q user@localhost 'any command'

只需将 password 替换为您的密码,将 user 替换为您的用户,然后输入您需要以该特定用户身份运行的命令...

要在 ubuntu 上安装 sshpass 只需键入

apt-get install sshpass

或者在 CentOs 上

yum install sshpass

关于linux - 使用 shell 打开 telnet 并传递命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40462351/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com