我的server2有一个文件“/home/test.tar.gz”。 在server1上,我想通过ssh执行命令将test.tar.gz解压缩到本地目录。
类似的东西:
sshpass -p 'password' ssh root@server2 "tar zxf /home/test.tar.gz" > /home/try
这甚至可能吗?
答案 0 :(得分:4)
在提取多种类型的文件时,无法将它们重定向到单个文件。
如果您尝试提取到目录,那么。
cd /tmp/try
ssh server2 "cat /home/test.tar.gz" | tar xvzf -
答案 1 :(得分:0)
首先,您应该运行ssh-copy-id或手动复制您的ssh公钥,并将您的server1密钥共享到server2并设置访问权限而无需密码。
按照以下网站:
然后使用下面的命令使用ssh解压缩文件
ssh -i /home/user/.ssh/user.pem user@server2 'tar -xzvf /home/user/test.tar.gz'
答案 2 :(得分:0)
你应该: - 使用ssh-copy-id在第一台和第二台服务器之间交换密钥,以避免传递密码。
比你能做的: - 使用SCP从服务器2复制tar并用tar提取 要么 - 在目录中的第二台机器上提取tar,然后使用scp -R
复制该目录