gpt4 book ai didi

windows - 执行 .ps1 脚本时的 Powershell 问题

转载 作者:可可西里 更新时间:2023-11-01 09:47:38 25 4
gpt4 key购买 nike

所以,警告,这可能是一个真正的新手问题,所以提前道歉。

我开始学习 Powershell,我想做的第一件事就是创建一个目录并将文件复制到其中。

现在,如果我在 CMD 窗口中使用以下命令,它们将完美运行。

mkdir %HOMEPATH%\test

cp test.txt %HOMEPATH%\test

但是,当我将它们放入 .ps1 文件并执行它时,我收到一条错误消息,指出找不到目录等(见下文)

Copy-Item:无法找到路径“C:\Chef\windowsdevbox-master\%HOMEPATH%\.berkshelf”的一部分

现在,我被告知这是因为我需要在每个命令之前放置 CMD。我运行了这个,CMD 在每个前面,错误消失了,取而代之的是我看到了 CMD 的“主页文本”,脚本完成了。

Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation. All rights reserved.

但是,没有创建文件夹,也没有复制文件。

我只是想知道我需要做什么才能让它发挥作用。

最佳答案

在 PowerShell 中,mkdir 是一个内置函数,旨在模拟相同的功能,但使用内置 cmdlet New-Item 来完成基础工作。

cp 是 PowerShell 的 Copy-Item cmdlet 的直接别名。

您无需在它们之前加上 cmd 即可使它们正常工作。

不过,PowerShell 不接受环境变量的 %VAR% 语法。相反,您可以使用特殊的 $env 变量,后跟一个冒号 :,然后是变量名称:$env:HOME

mkdir $env:HOMEPATH\test

cp test.txt $env:HOMEPATH\test

关于windows - 执行 .ps1 脚本时的 Powershell 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29833049/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com