【发布时间】:2021-06-15 22:05:30
【问题描述】:
我有一个 bash 脚本,可以说是 test.sh。该脚本包含以下内容:
#!/bin/bash
echo "khaled"
ads2 svcd&
此脚本仅打印我的姓名(仅用于测试目的)并在后台执行广告服务应用程序。当我在我的 ubuntu 上运行脚本时,它可以正常工作。作为测试,我检查了内核上运行的程序
如你所见。 ads2 运行并具有 12319 进程 ID。
现在我要做的是在 ubuntu 上运行脚本,但是从 Windows pc 远程运行。
因此我在 windows 上打开命令行并执行以下命令:
ssh nvidia@ubuntu ip-address ~/test.sh
我得到以下信息
正如您看到的脚本运行并打印 khaled,但是在 windows 命令行上,我想要的是脚本在 ubuntu 上执行。这证明了为什么 lineads2 svcd& 不做任何事情,无论是在 Windows 上(这是有道理的,因为 ads2 安装在 ubuntu 上)还是在 linux 上。
那么如何在 ubuntu 上执行脚本呢?
提前致谢
【问题讨论】:
-
它应该可以正常工作。
-
尝试将完整路径添加到 ads2 可执行文件
-
它正在在远程 Linux 上运行。输出通过您的 SSH 连接返回,显示在您的终端上。例如,尝试添加
echo $HOSTNAME或ls,以证明它正在远程运行。 -
@NVRM thatnks 的评论。我的问题是:test.sh 是在 ubuntu 上执行还是在 windows 上执行?
-
@slim 感谢您的评论。我在打印我的名字后添加了 ls。它没有打印除“khaled”之外的任何内容!