【问题标题】:Powershell - Log Off Script to copy two filesPowershell - 注销脚本以复制两个文件
【发布时间】:2014-07-23 15:54:52
【问题描述】:

Powershell 脚本非常新。通常我在运行我在其他地方找到的脚本......而不是试图创建我自己的。我正在使用远程桌面服务。我有一个批处理文件,它将在登录时将两个目录复制到用户路径。当用户注销时,我只想将 2 个特定文件复制回文件共享。这是我(在另一个在线社区的帮助下)想出的 powershell 脚本。

我想将此分配给用户的注销脚本。它在 $unc 处失败。更多信息:
W 驱动器指向文件共享上的用户目录。
我也尝试将其路径为 \\fileshare\Share\$username

代码:

function copydir ($user){

$userpath = $env:HOMEPATH
$unc = W:
copy-item $userpath\Data\App\DMS\DMS.accde $user\Data\App\DMS\ -recurse
copy-item $userpath\Dynamics\GP2010\dex.ini $user\Dynamics\GP2010\ -recurse
}
$username = $env:username
copydir $username*

错误: 术语 \\fileshare\Share\$username 未被识别为 cmdlet、函数、脚本文件的名称......

所以,显然它不喜欢 $UNC 参数。我尝试只使用 W: 运行它,因为它指向文件服务器上的用户配置文件并得到类似的错误。

但我要完成的基本前提是将 Data\App\DMS\DMS.accde 和 Dynamics\GP2010\dex.ini 复制到文件共享上的用户漫游配置文件中。

谢谢!

【问题讨论】:

    标签: powershell


    【解决方案1】:

    是否需要在 UNC 路径的前面添加双斜杠?

    $unc = "\\fileshare\Share\$user"
    

    【讨论】:

    • 对不起,我确实有它,这只是一个错字。我会编辑帖子!很好,那肯定会引起问题。它似乎不喜欢 UNC 线的任何部分。我不确定它是否需要,但我不确定我还能放什么。
    • 其实我只是去编辑邮件,它显示双斜线。不知道为什么它显示为单个。
    • 您是否需要使用$user 而不是$username,因为您在函数内部使用它?
    猜你喜欢
    • 1970-01-01
    • 2011-12-30
    • 1970-01-01
    • 2022-10-20
    • 2021-08-01
    • 1970-01-01
    • 1970-01-01
    • 2021-07-20
    • 1970-01-01
    相关资源
    最近更新 更多