如何使用 ssh 在远程主机中创建文件以及创建目录
我的主机中有一个文件 /a/b/c/file 。我想在远程主机上的 dest 目录中创建一个文件。现在的问题是,如何使用 perl 脚本和 ssh 在远程主机中创建一个文件 /dest/a/b/c/d/file 。知道如何在脚本中创建目录吗?
谢谢。
I have a file say /a/b/c/file in my host. I want to create a file on remote host in directory say dest. Now the question is, how do I create a file in remote host as /dest/a/b/c/d/file using perl script and using ssh. Any idea how do I create directories in script.?
Thanks.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
要重现目录结构,请使用
File::Spec
模块:catfile
将片段连接起来形成路径,abs2rel
给出相对于一些基本目录。File::Copy
模块的copy< /code> 将复制到句柄。这非常适合
sshopen3
在目标端打开标准输入、输出和错误句柄的方式。远程命令有 3 部分:
mkdir -p $dst_dir
,创建目标路径中该文件之前的所有目录cat >$dst_file
,连接SEND< /code> 目标文件
md5sum $dst_file
的句柄,表明数据已安全到达示例程序如下:
示例运行:
To reproduce the directory structure, use
catfile
andabs2rel
from theFile::Spec
module:catfile
joins pieces to make a path, andabs2rel
gives the path relative to some base directory.The
File::Copy
module'scopy
will copy to a handle. This fits nicely with howsshopen3
opens handles to the standard input, output, and error on the destination side.The remote command has 3 parts:
mkdir -p $dst_dir
, creates all directories preceding the file in the destination pathcat >$dst_file
, connects theSEND
handle to the destination filemd5sum $dst_file
, shows that the data arrived safelySample program below:
Sample run: