经过多次试验和错误,我想出了一个解决方案:

使用此(为.ps1编辑)创建一个快捷方式,让scrips以管理员身份运行,相对于任何目录:

CMD /C PowerShell "SL -PSPath '%CD%'; $Path = (GL).Path; SL ~; Start PowerShell -Verb RunAs -Args \""SL -PSPath '"$Path"'; & '".\YourScriptHere.ps1"'"\""

您必须清空快捷方式的“开始”字段,以将其相对路径设置为工作目录 .

或者,这是一个脚本,它将为目录中的每个.ps1生成这些快捷方式之一(“已开始”已清除):

(GCI | Where-Object {$_.Extension -eq ".ps1"}).Name | ForEach-Object {

$WshShell = New-Object -ComObject WScript.Shell

$Shortcut = $WshShell.CreateShortcut((GL).Path+"\$_ Run.lnk")

$Shortcut.TargetPath = 'CMD'

$Shortcut.Arguments = "/C PowerShell `"SL -PSPath `'%CD%`'; `$Path = (GL).Path; SL ~; Start PowerShell -Verb RunAs -Args \`"`"SL -PSPath `'`"`$Path`"`'; & `'`".\$_`"`'`"\`"`""

$Shortcut.IconLocation = 'PowerShell.exe'

$Shortcut.Save()

}

如果需要,请在第一个 \" 之后添加 -NoExit , -ExecutionPolicy Unrestricted 等 .

笔记:

PowerShell从第一个启动的第二个管理实例的原因是直接以管理员身份启动(通过勾选快捷方式的"Run as administrator"框),因为some reason忽略"Start in"并始终在System32中启动 .

CMD用于启动第一个实例,因为PowerShell当前无法解析包含方括号的路径,将它们解释为正则表达式字符 . 这通常可以使用LiteralPath参数(也就是PSPath)来避免,但是在这里,路径在启动时在幕后传递,并且由开发人员来修复(我刚刚提交了错误报告here) .

powershell运行D盘java_PowerShell:使用相对路径从快捷方式运行脚本相关推荐

  1. windows subst命令实现原理模拟1 - 打印subst模拟出的盘符的实际路径

    笔记 现在经常用BAT脚本(使用subst命令),将工程目录模拟成磁盘来用,好处挺多的. 今天手头的活验证完后, 突然想起来看看subst命令是咋实现的. 知道咋实现之后,以后可以在自己的程序中模拟出 ...

  2. Linux系统程序运行时加载动态库路径顺序

    程序运行时加载动态库路径顺序(Linux) 在linux系统中,如果程序需要加载动态库,它会按照一定的顺序(优先级)去查找: 链接时路径(Link-time path)和运行时路径(Run-time ...

  3. 服务器虚拟机怎么选择iso文件位置,Hyper-V 虚拟机的光盘镜像文件路径 (.ISO) 不支持网络映射盘符或 UNC 路径?...

    在 Windows Server 2016 中使用 Hyper-V 建立新虚拟机,选择安装系统的镜像文件所在路径时,如果是用网络映射盘符或 UNC 路径,建立虚拟光驱会失败.提示: [Window T ...

  4. 昊鼎王五:Windows运行中的所有命令_Windows快捷命令_运行中的所有命令

    昊鼎王五:Windows运行中的所有命令_Windows快捷命令_"运行"中的所有命令 winver 检查Windows版本 wmimgmt.msc 打开Windows管理体系结构 ...

  5. 创建相对路径的快捷方式

    普通的快捷方式都是绝对路径,如果快捷方式在U盘中使用会非常不方便,因为U盘可能在不同的电脑上显示不同的盘符,这时就需要想办法创建相对路径的快捷方式. 在需要创建快捷方式的地方创建一个文本文档 1.在其 ...

  6. 下运行maven命令_如何在批处理模式下运行 top 命令

    可能已经知道 top 命令的绝大部分操作,除了很少的几个操作,如果我没错的话,批处理模式就是其中之一. -- Magesh Maruthamuthu(作者) top 命令 是每个人都在使用的用于 监控 ...

  7. Docker在Windows上运行NetCore系列(一)使用命令控制台运行.NetCore控制台应用

    Docker在Windows上运行NetCore系列(一)使用命令控制台运行.NetCore控制台应用 系列文章:https://www.cnblogs.com/alunchen/p/10121379 ...

  8. 将两个文件的路径作为参数传递给脚本_将Docker与pipeline一起使用

    许多组织使用Docker统一其跨机器的构建和测试环境,并提供一种用于部署应用程序的有效机制.从Pipeline 2.5及更高版本开始,Pipeline内置支持从内与Docker进行交互 Jenkins ...

  9. u盘中毒(U盘所有的文件都变成快捷方式)的解决方法

    u盘中毒(U盘所有的文件都变成快捷方式)的解决方法 有时我们的U盘插入一些公用的电脑里,会中些U盘病毒,把你U盘的文件全部变成快捷方式.当你这种病毒时,不要急不要慌,其实这种病毒对你U盘的文件并没有破 ...

最新文章

  1. Improve Performance and Reduce Memory with PVRTC Textures and Cocos2d
  2. 智能机器人与系统高精尖创新中心2018年度开放基金项目申报通知
  3. 【深度学习入门到精通系列】卷积和池化计算详解
  4. IP中继如何工作?——Vecloud
  5. SpringCloud采坑之Feign服务间调用默认返回xml
  6. 用户创建自定义的参数ID
  7. linux学习教程(一)(安装篇)centos7没有安装ifconfig命令的解决方法
  8. 一体化住户调查_曲麻莱县2020年城乡一体化住户调查表彰会暨年报部署会
  9. chajian8.com谈:SyntaxHighlighter 代码高亮
  10. hpml350服务器安装系统,安装HP ML350
  11. SVN,HG,GIT 命令说明
  12. Firebug下载地址及安装方法
  13. c语言二进制转十六进制代码,C语言--二进制转十六进制
  14. 亚马逊云服务(AWS)机器学习服务Amazon SageMaker发力中国
  15. 使用键盘设置桌面计算机图标的显示不出来,显示桌面,小编教你显示桌面图标不见了如何恢复...
  16. 怎么在计算机里隐藏文件,怎么显示电脑隐藏文件?
  17. android.os.FileUriExposedException: file:///storage/emulated/0/market/cache/com.moji.mjweather.apk
  18. STM32串口蓝牙实验--蓝牙控制小灯
  19. android字体加横线
  20. IDEA Windows + Mac 快捷键(全)

热门文章

  1. mfc140dll 丢失 微软常用运行库_微软常用运行库合集 2020.9月(32amp;64位)
  2. centos7 iptables 端口转发 保存_Linux 开发笔记《如何在CentOS 7上启动和启用Firewalld》...
  3. sql注入pythonpoco_.NET EF(Entity Framework)详解
  4. php流导出excel内存溢出,phpExcel导出大量数据出现内存溢出错误的解决方法
  5. JVM知识点总览:高级Java工程师面试必备
  6. springboot+vue的前后端分离与合并方案
  7. 【PHP高级特性】之反射
  8. Java URL协议扩展实现
  9. css3 的 calc()函数在布局中的使用----头部高度固定,页面正好占满一屏
  10. Intellij IDEA 新建一个EJB工程(三)