windows - 如何使用 Perl 将文件从 Unix 目录复制到 Windows 目录?
问题描述
我是 Perl 的新手,试图将 CSV 文件从 UNIX 目录复制到 Windows 共享驱动器,而不使用 FTP。
下面是我的代码,其中源是 UNIX 目录中的 CSV 文件,同时"C:/New folder"
已创建用于接收该文件。我将新文件夹放在这里作为占位符,因为我还没有弄清楚应该使用哪个共享驱动器。
use File::Copy;
sub TestCopyFile
{
my $source = "/home/user/somefolder/somefile.csv";
my $target = "C:/New folder";
copy($source, $target);
}
所以当我尝试从 PuTTY 运行它时,我被告知它是成功的。但是,我在目标文件夹中找不到该文件。
我的代码有什么问题吗?任何建议表示赞赏。
解决方案
不是perl问题,真的。Windows 共享驱动器意味着SMB。您需要安装samba并将共享驱动器挂载到本地文件系统树中。
例子:mount.cifs //the-workstation/the-share ~/mnt/the-workstation/the-share -o rw,vers=3.0,sec=ntlmssp,credentials=$HOME/.smbcredentials,cache=strict,uid=1000,forceuid,gid=100,forcegid,addr=172.xxx.xxx.xxx,file_mode=0644,dir_mode=0755,nounix,serverino,rsize=1048576,wsize=1048576,actimeo=1
如果一开始很难弄清楚,您可以使用smb4k浏览网络。找到正确的共享后,它将告诉您安装的适当命令。
推荐阅读
- node.js - vue-cli webpack sass backgorund 图像无法解析
- algorithm - 在 2D 中查找半径中的 N 个随机邻居
- javascript - Reactjs:如何检查每个包含值的数组索引?
- apache-nifi - 如何使用 NiFi 拆分文本文件中的列?
- entity-framework - 实体框架:在哪里查找
- python - 当我在 Django Admin 中删除或添加对象时,它不会在网页上删除或添加?
- python-3.x - 连接到设备并使用 paramiko 打开 shell
- xml - WCF XML 序列化消息格式
- android - FCM BigQuery - 未返回 MESSAGE_DELIVERED 记录
- javascript - Firebase 安全规则不显示任何数据