免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 16340 | 回复: 1
打印 上一主题 下一主题

[Windows 7] 关于powershell上传文件到远程服务器 [复制链接]

求职 : Linux运维
论坛徽章:
10
丑牛
日期:2013-11-22 14:59:41数据库技术版块每日发帖之星
日期:2016-08-13 06:20:0015-16赛季CBA联赛之山西
日期:2016-08-03 10:35:38数据库技术版块每日发帖之星
日期:2016-07-31 06:20:002016科比退役纪念章
日期:2016-06-27 14:08:14数据库技术版块每日发帖之星
日期:2016-06-02 06:20:0015-16赛季CBA联赛之广东
日期:2016-05-20 15:06:2215-16赛季CBA联赛之深圳
日期:2016-01-29 16:27:402015亚冠之阿尔艾因
日期:2015-09-08 16:35:3615-16赛季CBA联赛之北京
日期:2017-03-28 18:45:36
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2016-06-23 15:29 |只看该作者 |倒序浏览
在网上搜索到一个使用powershell从本地上传文件到远程服务器的脚本,但其中一个地方不太明白,还请各位大神帮忙解答下!谢谢!
不太明白这句 <RemoteDirPath>\\远程主机IP地址\D$\test</RemoteDirPath>的D$是什么意思?是指远程主机的D盘吗?


脚本名:AutoCopyfile.ps1
  1. [string]$xmldocpath = "E:\DOE\Test\Config.xml"                  #读取配置文件Config.xml

  2. $xmlDoc = New-Object "system.xml.xmldocument"
  3. $xmlDoc.Load($xmldocpath)
  4. $nodeList=$xmlDoc.GetElementsByTagName("Server");

  5. foreach($node in $nodeList){
  6.         $childNodes = $node.ChildNodes
  7.        
  8.         $localDirPath = $childNodes.Item(0).InnerXml.ToString()         # 本地待拷贝文件目录
  9.         $remoteDirPath = $childNodes.Item(1).InnerXml.ToString()        # 远程文件目录
  10.         $remoteLoginName = $childNodes.Item(2).InnerXml.ToString()      # 远程登录用户名
  11.         $remotePwd = $childNodes.Item(3).InnerXml.ToString()            # 远程登录密码
  12.         $include = $childNodes.Item(4).InnerXml.ToString().Split(',')   # 要包含的文件格式
  13.         $exclude = $childNodes.Item(5).InnerXml.ToString().Split(',')          # 要排除的文件格式
  14.        
  15.         Write-Host '将从' $localDirPath '本地目录拷贝文件到 '$remoteDirPath' 远程目录中'
  16.         Write-Host '  待包含的文件格式:'$include,'待排除的文件格式:'$exclude
  17.        
  18.         Write-Host '连接远程主机...'
  19.         net use $remoteDirPath $remotePwd /user:$remoteLoginName
  20.        
  21.         Write-Host '递归拷贝文件(强制覆盖模式)...'
  22.        
  23.         $files = Get-ChildItem -Path $localDirPath # 获取本地目录下的文件
  24.         foreach($file in $files) {
  25.                 Copy-Item -Path $file.FullName -Destination $remoteDirPath -Include $include -Exclude $exclude -Recurse -Force
  26.         }

  27.         Write-Host '目录拷贝完成!'
  28. }
复制代码
配置文件:Config.xml
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <Servers>
  3.    <Server>
  4.       <LocalDirPath>D:\test</LocalDirPath>
  5.       <RemoteDirPath>\\远程主机IP地址\D$\test</RemoteDirPath>
  6.       <RemoteLoginName>Domain名\你的远程登录用户名</RemoteLoginName>
  7.       <RemotePwd>你的远程登录密码</RemotePwd>
  8.       <Include>*.dll,*.xml</Include>
  9.       <Exclude>*.txt</Exclude>
  10.    </Server>
  11. </Servers>
复制代码

求职 : Linux运维
论坛徽章:
10
丑牛
日期:2013-11-22 14:59:41数据库技术版块每日发帖之星
日期:2016-08-13 06:20:0015-16赛季CBA联赛之山西
日期:2016-08-03 10:35:38数据库技术版块每日发帖之星
日期:2016-07-31 06:20:002016科比退役纪念章
日期:2016-06-27 14:08:14数据库技术版块每日发帖之星
日期:2016-06-02 06:20:0015-16赛季CBA联赛之广东
日期:2016-05-20 15:06:2215-16赛季CBA联赛之深圳
日期:2016-01-29 16:27:402015亚冠之阿尔艾因
日期:2015-09-08 16:35:3615-16赛季CBA联赛之北京
日期:2017-03-28 18:45:36
2 [报告]
发表于 2016-06-23 16:00 |只看该作者
是WINDOWS下的默认共享,D$就是共享D盘,打开cmd,输入net share就能查看哪些盘是共享的!
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP