- xml - AJAX/Jquery XML 解析
- 具有多重继承的 XML 模式
- .net - 枚举序列化 Json 与 XML
- XML 简单类型、简单内容、复杂类型、复杂内容
rsh := fmt.Sprintf("--rsh=\"/usr/bin/ssh -p %s -o StrictHostKeyChecking=no -l %s\"", *destPort, *destUserName)
cmd := exec.Command("rsync", "-avz", rsh, from, fmt.Sprintf("%s:%s", *destHost, to))
fmt.Println(cmd)
var outb, errb bytes.Buffer
cmd.Stdout = &outb
cmd.Stderr = &errb
err = cmd.Run()
fmt.Println(outb.String())
fmt.Println(errb.String())
我收到这个错误:
rsync: Failed to exec /usr/bin/ssh -p 1999 -o StrictHostKeyChecking=no -l root: No such file or directory (2)
rsync error: error in IPC code (code 14) at pipe.c(84) [sender=3.0.9]
rsync: connection unexpectedly closed (0 bytes received so far) [sender]
rsync error: error in IPC code (code 14) at io.c(605) [sender=3.0.9]
试图在 rsh
中显式设置 ssh
的完整路径。
fmt.Println(cmd)
的输出似乎是正确的:
&{/usr/bin/rsync [rsync -avz --rsh="/usr/bin/ssh -p 1999 -o StrictHostKeyChecking=no -l root" /var/www/html/atlaserpsolution.com/production/altractors h3.ftp.datagix.com:/var/www/vhosts/atlas.ns513.datagix.com/atlaserp/documents/altractors] [] <nil> <nil> <nil> [] <nil> <nil> <nil> <nil> <nil> false [] [] [] [] <nil> <nil>}
我的 exec.Command
出了什么问题?
最佳答案
您正在将两个参数合并为一个(--rsh
和 /usr/bin/ssh ...
)。拆分它们,它应该可以工作:
rsh := fmt.Sprintf("/usr/bin/ssh -p %s -o StrictHostKeyChecking=no -l %s", *destPort, *destUserName)
cmd := exec.Command("rsync", "-avz", "--rsh", rsh, from, fmt.Sprintf("%s:%s", *destHost, to))
关于go - 通过 exec.Command 使用 rsh 选项运行 rsync,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46951459/
我遇到一个问题,即使用 RSH 远程启动脚本时端口不足。 我有一个需要运行的脚本,该脚本已被推送到每台服务器。我有一个服务器列表(主机文件列表) 基本上,我有一个简单的循环可以并行运行它们。 for
rsh 命令正在删除远程 shell 中的双引号。 例如:我的命令rsh 10.20.1.25 my_pgm -g "NAME1 NAME2"在远程外壳中my_pgm -g 姓名 1 姓名 2 我也想
我正在尝试运行这个 bash 命令,但我无法绕过“|”管道符 rsh -l user machine "echo "PORTS = 123|456|789">> conf.cfg" 获得: bash:
我正在尝试运行 python 脚本,我需要从脚本中 Rsh 命令,我想运行的命令是:df -Pk|grep "sd\|md"|gawk '{print $2}' 我这样做是因为- cmd2='df -
最近有一个问题困扰着我。 我正在尝试使用 rsh 或 remsh(在 HPUX 中)执行以下操作: #!/bin/sh rsh myDNS" DIRECTORY=/tmp/foo1/foo2
我有一个这样的服务器列表文件: xxx ServerName1 xxx xxx ServerName2 xxx ... 现在我想去每个服务器从本地重命名一个文件。我的 Bash 脚本是这样的: #!/
我想在 Unix 的远程机器上将程序作为守护进程运行。我有 rsh 连接,我希望程序在断开连接后运行。 假设我有两个程序:util.cpp 和 forker.cpp。 util.cpp 是一些实用程序
我现有的批处理脚本可以在 Windows XP 中运行。这些脚本使用 windows xp 支持的 rcp 和 rsh 命令。 这些脚本用于连接到 unix box 并将文件传输到它。稍后使用 rsh
我有一个主服务器,可以在网络上抓取数据,并进行索引编制。之后它开始镜像到所有的镜像服务器。 为此,我使用rsync 和 rsh。 但是在镜像服务器开始更新之前,需要时间。我想找出发生延迟的位置。 我的
我有一个 Perl Expect.pm在多个远程 unix 主机上执行一些中等复杂的事情的脚本,如打包应用程序、部署应用程序、检查日志等。 我的前任使用 rsh 编写了类似的脚本。 两者之间有更好的方
在 C 上编写程序,使用 libnet 和 libpcap 模拟 RSH 客户端,并在运行 RSHD 的服务器计算机上注入(inject)我自己的命令。 据我了解,该命令应该位于 ACK 数据包的“有
我正在尝试编写一个 rsh 到 unix 机器上的脚本,并在某些文件上执行某些命令 rsh 的机器(在本例中是一台名为 uk01ff200 的机器) 在机器中搜索一个目录 然后在该目录中搜索以 cor
我正在调用 rsh在 go exec.Command: rsh := fmt.Sprintf("--rsh=\"/usr/bin/ssh -p %s -o StrictHostKeyChecking=
是否有可能让 git 使用“ssh”以外的东西作为 ssh 程序?为此,rsync 有一个 -e 选项,以及可以将 rsh 或 ssh 用作传输的其他接口(interface)。我的特定用例是通过堡垒
任何人都可以提供 nsh 命令列表的链接吗以及像rsh或ssh一样如何使用nsh远程执行linux命令 最佳答案 我在 Stackoverflow 上查找有关 NSH 的信息时发现了这篇文章。 好消息
我是一名优秀的程序员,十分优秀!