问题
This sounds like it should be so simple... I must be dumb.
All I want is to make a windows short-cut that opens Powershell into a specific directory:
I'm using the target:
%SystemRoot%\system32\WindowsPowerShell\v1.0\powershell.exe
-noexit -command {cd c:/path/to/open}
Put it just spits out the command as text.
回答1:
or use : powershell.exe -noexit -command "cd c:\temp "
回答2:
You can also set the "Start in" shortcut field to your desired location.
回答3:
Ok - you need to use the &
parameter to specify it's a powershell comand & the syntax is slightly different:
%SystemRoot%\system32\WindowsPowerShell\v1.0\powershell.exe
-noexit -command "& {cd c:\path\to\open}"
回答4:
try:
%SystemRoot%\system32\WindowsPowerShell\v1.0\powershell.exe
-noexit -command "cd c:/path/to/open"
回答5:
If you want powershell to start as admin and run in a specific directory, even on a different drive, it is better to use the Set-Location
command. Follow these steps
- Create a ShortCutLink with the target being the powershellcommand exe.
- Leave
Start in:
blank. (Normally this starts in current working directory when blank; but we do not care.) Change
Target
to this with your targets for powershell and locations:C:\Windows\...\v1.0\powershell.exe -noexit -command "Set-Location D:\_DCode\Main"
- Click
Advanced...
and selectRun as administrator
. - Click
OK
s out.
Don't forget the handy trick to change the colors of the shortcut from the Colors
tab. That way if you have two or more links which open powershell windows, seeing a different color can visually let you know which shell one is working in.
回答6:
Copy this code into notepad and save with a reg extension. Double click the resulting file.If you get a message about importing to the registry click on yes and then ok. Navigate to any folder in explorer and bring up the context menu. This is typically done by clicking the right mouse button.
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\Directory\Background\shell\PShell]
"MUIVerb"="Open in Powershell Window"
[HKEY_CLASSES_ROOT\Directory\Background\shell\PShell\command]
@="c:\\windows\\system32\\WindowsPowerShell\\v1.0\\powershell.exe -NoExit -Command Set-Location -LiteralPath '%V'"
回答7:
If one wants a explorer right click options run this script:
New-PSDrive -Name HKCR -PSProvider Registry -Root HKEY_CLASSES_ROOT
if(-not (Test-Path -Path "HKCR:\Directory\shell\$KeyName"))
{
Try
{
New-Item -itemType String "HKCR:\Directory\shell\$KeyName" -value "Open PowerShell in this Folder" -ErrorAction Stop
New-Item -itemType String "HKCR:\Directory\shell\$KeyName\command" -value "$env:SystemRoot\system32\WindowsPowerShell\v1.0\powershell.exe -noexit -command Set-Location '%V'" -ErrorAction Stop
Write-Host "Successfully!"
}
Catch
{
Write-Error $_.Exception.Message
}
}
else
{
Write-Warning "The specified key name already exists. Type another name and try again."
}
This is what is shown now:
Note that you can download a detailed script from how to start PowerShell from Windows Explorer.
来源:https://stackoverflow.com/questions/14233659/open-powershell-in-a-specific-directory-from-shortcut