windows powershell 如何进入文件目录 admin 2023-09-18 11:18:01 篇首语:本文由小编为大家整理,主要介绍了windows powershell 如何进入文件目录相关的知识,希望对你有一定的参考价值。 1、首先打开电脑,然后打开Powershell程序窗口。2、然后在新的界面里使用md命令来创建文件夹。3、之后在新的界面里按键盘“回车键”后命令执行成功。4、然后在新的界面里就可以看到windows powershell 进入文件目录成功了。 参考技术A e: 回车 表示切换到E盘c: 回车 表示切换到C盘切换之后cd 目录名 就可以进入了。如果要进入多层目录用/隔开cd 目录名/目录名追问C:\Program Files\mysql\MySQL Server 5.5\bin当我要进入这个目录的时候,我是这样写的原来先 cd \ 进入C盘根目录;然后cd \Program Files\MySQL\MySQL Server 5.5\bin在 CMD 中这个命令是可行的。。但在 powerShell 第二步有错。。按照你说的我第二步是这样写的。cd Program Files\MySQL\MySQL Server 5.5\bin但也有错。。cd C\Program Files\MySQL\MySQL Server 5.5\bin同样有错。追答目录名不能有空格你试试把整个目录名用引号引起来。cd “Program Files\MySQL\MySQL Server 5.5\bin”本回答被提问者和网友采纳 参考技术B Windows PowerShell进入文件夹Program Files时如果报错需要在文件夹加" ",如:C:\> cd c:\"Program Files (x86)" 参考技术C 别名是cd 和批处理一样.powershell里的命令是Set-Location等同于cd 参考技术D 这个与cmd有一点微妙的不同进入哪个盘和cmd一样,比如进E盘就是:E:再按回车Powershell切换目录虽然也是cd,但是目录名必须要有双引号比如我要进E盘的New文件夹,要输入:cd “E:\New” 注意不能丢下双引号 设置Windows PowerShell环境变量我发现设置PATH环境变量只会影响旧的命令提示符。 PowerShell似乎有不同的环境设置。如何更改PowerShell(v1)的环境变量?注意:我希望永久更改我的更改,因此每次运行PowerShell时都不必设置它。 PowerShell有配置文件吗?像Unix上的Bash配置文件? 答案可以使用env: namespace / drive信息更改实际环境变量。例如,此代码将更新路径环境变量:$env:Path = "SomeRandomPath"; (replaces existing path) $env:Path += ";SomeRandomPath" (appends to existing path)有一些方法可以永久保持环境设置,但如果您只是从PowerShell使用它们,那么使用您的配置文件启动设置可能要好得多。在启动时,PowerShell将运行它在My Documents文件夹下的WindowsPowerShell目录中找到的任何.ps1文件。通常,您已经有profile.ps1文件。我的电脑上的路径是C:UsersJaredParDocumentsWindowsPowerShellprofile.ps1 另一答案大多数答案都不是针对UAC。这涵盖了UAC问题。首先通过choco install pscx安装PowerShell社区扩展:http://chocolatey.org/(您可能必须重新启动shell环境)。然后启用pscxSet-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser #allows scripts to run from the interwebs, such as pcsx然后使用Invoke-ElevatedInvoke-Elevated {Add-PathVariable $args[0] -Target Machine} -ArgumentList $MY_NEW_DIR 另一答案在@Michael Kropat"s回答的基础上,我添加了一个参数来预先添加现有PATHvariable的新路径,并检查以避免添加不存在的路径:function Add-EnvPath { param( [Parameter(Mandatory=$true)] [string] $Path, [ValidateSet("Machine", "User", "Session")] [string] $Container = "Session", [Parameter(Mandatory=$False)] [Switch] $Prepend ) if (Test-Path -path "$Path") { if ($Container -ne "Session") { $containerMapping = @{ Machine = [EnvironmentVariableTarget]::Machine User = [EnvironmentVariableTarget]::User } $containerType = $containerMapping[$Container] $persistedPaths = [Environment]::GetEnvironmentVariable("Path", $containerType) -split ";" if ($persistedPaths -notcontains $Path) { if ($Prepend) { $persistedPaths = ,$Path + $persistedPaths | where { $_ } [Environment]::SetEnvironmentVariable("Path", $persistedPaths -join ";", $containerType) } else { $persistedPaths = $persistedPaths + $Path | where { $_ } [Environment]::SetEnvironmentVariable("Path", $persistedPaths -join ";", $containerType) } } } $envPaths = $env:Path -split ";" if ($envPaths -notcontains $Path) { if ($Prepend) { $envPaths = ,$Path + $envPaths | where { $_ } $env:Path = $envPaths -join ";" } else { $envPaths = $envPaths + $Path | where { $_ } $env:Path = $envPaths -join ";" } } }} 另一答案我的建议就是这个,我已经测试了这个将C: oracle x64 bin永久添加到Path,这很好用。$ENV:PATH第一种方法就是:$ENV:PATH=”$ENV:PATH;c:pathofolder”但是这个改变并不是永久性的,$ env:只要你关闭你的powershell终端并重新打开它,路径就会默认回到之前的状态。这是因为您已在会话级别而不是源级别(即注册表级别)应用了更改。要查看$ env:path的全局值,请执行以下操作:Get-ItemProperty -Path "Registry::HKEY_LOCAL_MACHINESystemCurrentControlSetControlSession ManagerEnvironment’ -Name PATH或者,更具体地说:(Get-ItemProperty -Path "Registry::HKEY_LOCAL_MACHINESystemCurrentControlSetControlSession ManagerEnvironment’ -Name PATH).path现在要更改它,首先我们捕获需要修改的原始路径:$oldpath = (Get-ItemProperty -Path "Registry::HKEY_LOCAL_MACHINESystemCurrentControlSetControlSession ManagerEnvironment’ -Name PATH).path现在我们定义新路径应该是什么样子,在这种情况下我们要附加一个新文件夹:$newpath = “$oldpath;c:pathofolder”注意:确保$ newpath看起来如何看,如果没有,那么你可能会损坏你的操作系统。现在应用新值:Set-ItemProperty -Path "Registry::HKEY_LOCAL_MACHINESystemCurrentControlSetControlSession ManagerEnvironment’ -Name PATH -Value $newPath现在做一个最终检查它看起来你期望它:(Get-ItemProperty -Path "Registry::HKEY_LOCAL_MACHINESystemCurrentControlSetControlSession ManagerEnvironment’ -Name PATH).Path您现在可以重新启动powershell终端(甚至重启机器)并看到它不会再次回滚到它的旧值。请注意,路径的顺序可能会改变,因此它按字母顺序排列,因此请确保检查整行,以便更容易,您可以使用分号作为分隔符将输出拆分为行:($env:path).split(“;”) 另一答案我尝试优化SBF"s和Michael"s代码以使其更紧凑。我依赖于PowerShell的类型强制,它自动将字符串转换为枚举值,所以我没有定义查找字典。我还根据条件拉出了将新路径添加到列表中的块,以便工作完成一次并存储在变量中以便重复使用。然后根据$PathContainer参数将其永久或仅应用于Session。我们可以将代码块放在我们直接从命令提示符调用的函数或ps1文件中。我选择了DevEnvAddPath.ps1。param( [Parameter(Position=0,Mandatory=$true)][String]$PathChange, [ValidateSet("Machine", "User", "Session")] [Parameter(Position=1,Mandatory=$false)][String]$PathContainer="Session", [Parameter(Position=2,Mandatory=$false)][Boolean]$PathPrepend=$false)[String]$ConstructedEnvPath = switch ($PathContainer) { "Session"{${env:Path};} default{[Environment]::GetEnvironmentVariable("Path", $containerType);} };$PathPersisted = $ConstructedEnvPath -split ";";if ($PathPersisted -notcontains $PathChange) { $PathPersisted = $(switch ($PathPrepend) { $true{,$PathChange + $PathPersisted;} default{$PathPersisted + $PathChange;} }) | Where-Object { $_ }; $ConstructedEnvPath = $PathPersisted -join ";";}if ($PathContainer -ne "Session") { # Save permanently to Machine, User [Environment]::SetEnvironmentVariable("Path", $ConstructedEnvPath, $PathContainer);}# Update the current session${env:Path} = $ConstructedEnvPath;我为DevEnvRemovePath.ps1做了类似的事情。param( [Parameter(Position=0,Mandatory=$true)][String]$PathChange, [ValidateSet("Machine", "User", "Session")] [Parameter(Position=1,Mandatory=$false)][String]$PathContainer="Session")[String]$ConstructedEnvPath = switch ($PathContainer) { "Session"{${env:Path};} default{[Environment]::GetEnvironmentVariable("Path", $containerType);} };$PathPersisted = $ConstructedEnvPath -split ";";if ($PathPersisted -contains $PathChange) { $PathPersisted = $PathPersisted | Where-Object { $_ -ne $PathChange }; $ConstructedEnvPath = $PathPersisted -join ";";}if ($PathContainer -ne "Session") { # Save permanently to Machine, User [Environment]::SetEnvironmentVariable("Path", $ConstructedEnvPath, $PathContainer);}# Update the current session${env:Path} = $ConstructedEnvPath;到目前为止,他们似乎工作。 另一答案打开PowerShell并运行:[Environment]::SetEnvironmentVariable("PATH", "$ENV:PATH;", "USER") 另一答案如果,在PowerShell会话期间的某个时间,您需要临时追加到PATH环境变量,您可以这样做:$env:Path += ";C:Program FilesGnuWin32in" 另一答案您还可以使用以下命令永久修改用户/系统环境变量(即,将在shell重新启动时保持持久性):### Modify a system environment variable ###[Environment]::SetEnvironmentVariable ("Path", $env:Path, [System.EnvironmentVariableTarget]::Machine)### Modify a user environment variable ###[Environment]::SetEnvironmentVariable ("INCLUD以上是关于windows powershell 如何进入文件目录的主要内容,如果未能解决你的问题,请参考以下文章 移动硬盘里一直出现AliWorkbenchData文件夹,怎么永久删掉? Mac上快速安装oh-my-zsh 您可能还会对下面的文章感兴趣: 相关文章 浏览器打不开网址提示“ERR_CONNECTION_TIMED_OUT”错误代码的解决方法 如何安装ocx控件 VMware的虚拟机为啥ip地址老是自动变化 vbyone和EDP区别 linux/debian到底怎么重启和关机 苹果平板键盘被弄到上方去了,如何调回正常? 机器学习常用距离度量 如何查看kindle型号